Merge branch '376_jenkins' of https://github.com/cgolubi1/buttonmen into 419_jenkins_js
* add a jenkins-grunt file (this will fail without a bunch more work, it's just a start)
* beginning of puppet grunt dependencies
* try having jenkins-grunt.sh do a local npm install before running
* actually try having jenkins-grunt.sh do a local npm install before running
* comment everything i don't understand out of gruntfile for now,
  and add a jenkins target
* add some formatting rules i like to .jshintrc
* try to figure out what comment style jshintrc likes
* don't bother with comments
* set es5 for now to relax trailing commas requirement
* jshintrc does not allow trailing commas
* disable camelcase requirement until i decide what to do about it
* modify some spacing in Api.js to see if i can get indent:2 to stop complaining
* fix more whitespace in Api.js
* more whitespace fixes in Api.js
* add trailing semicolons to function definitions in Api.js
* try to get around "Bad line breaking" error
* repair a few more jshint complaints
* fix a couple of missing variable definitions
* fix "W018: Confusing use of '!'
* fix many instances of missing semicolons