Add in more comments & tidy up