Thanks to @BrainSlayer help I managed to get this working and have assembled all the information as a guide here: