Add rubocop 

As a first step in further developing the gem, I've added the rubocop gem as a development dependancy. 

I've also ran rubocop with the autocorrect feature since there were thousands of offences, I did some more manual changes and then created a TODO list of the rest of the offences in .rubocop_todo.yml to suppress the rest of the offences and keep track of them, so they can be removed over time.