Add grunt tasks and Dash tests

This adds grunt to run tasks.

The tasks run by grunt are:
- jshint (static checking)
- uglify (produces the minified dash.min.js)
- jasmine (runs test specs and produces a code-coverage report)

This also adds 99 tests for the code in app/js/dash