add a whole bunch of comments in bid to organise code