Dev jshint compliant

This is a pull request for only the changes that adhere to the project passing the grunt-contrib-jshint task. This task was also added back to the Gruntfile.js, and a 'default' task was added to the project so that running 'grunt' first lints the project and then if passing runs the grunt uglify task to minify the project.

The one major style change I added which can easily be reversed for consistency is the space before the first parenthesis of an anonymous function.