Fix Travis-CI and JSHint with GruntJS

Travis-CI is now running properly and failing the build because JSHint isn't passing. I had used `jshint` from `npm` to create that previous jshint config file and it allowed suppressing specific warnings, but `jshint` from `grunt` behaves differently so `grunt test` isn't passing atm.

I will do a separate PR to deal with the JSHint errors, but you might want to take a look at them first because some's about usage of `===` and `==` which you seem to be doing incorrectly.