fix jshint errors and add jshint to travis.yml

make sure we run jshint on the CI process, will reduce amount of dumb errors (we only break rules when it makes sense) and should also help to keep commit history cleaner (so blames/diffs works better).

closes #42