Wrapping build tools around the project

* Manage project tasks via Grunt
* Lint source with JSHint
* Rewrote tests to use Jasmine with code coverage
* Update documentation to reflect the above
* Enable Travis build integration