Rubocop

This looks like a huge change but most of it is just enforcing rubocop consistency and cleanup.  Mostly involves changing " to ' and fixing indent inconsistency.  also a few things like naming standards and removing trailing spaces.

I've also added a .travis.yml this way you can have https://travis-ci.org pull and test/validate every push.  It's free and quite easy to set up if you haven't done it before.