Swap out vendorized Jasmine runner for grunt-contrib-jasmine

We recently had some problems getting the spec suite to run in Travis
CI, even on old commits where it once ran correctly. This seems to be
happening because either a newer version of Node, npm, phantomjs, or
Travis CI included a change that broke our setup.

In an attempt to jumpstart this back into working, and in hopes of
making it more resilient for the future, I am swapping out my vendorized
Jasmine runner for grunt-contrib-jasmine. At the same time, I added some
JSHint to help keep things in check.

This more or less followed the guide as written up at:

  http://travisjeffery.com/b/2013/09/testing-javascript-projects-with-grunt-jasmine-jshint/

Change-Id: If45b72461ddecd12acb20a674e2ac78016dc911b