add jshint to `make test`

* add a lint target to the Makefile that runs jshint
* fix all jshint errors from the default config
* have the make test target run the lint target
Huh, JSHint is easily scared of return statements, even when they're not there. Either that, or I don't understand this change.