Grunt build support

I setup [Grunt](http://gruntjs.com) as a build system for this package. If you're not familiar, it's a JavaScript-centric build tool with a whole lot of prebuilt modules. It will allow you to do things like automatically run JSHint when a file changes and integrate with [Travis CI](https://travis-ci.org/Nycto/pen).

There are a number of benefits to this change:

* Static analysis of the code via JSHint will catch bugs
* JSHint will enforce coding standards, making it easier to accept pull requests
* This should also make it easier for other people to integrate this project with their own, especially if they are running JSHint themselves.
* Travis CI will let you know if anything is broken as soon as you push to Github
* Pull requests will automatically get built by Travis CI and rejected if the build fails
* Opens the door for easy unit test integration, if you ever want to go there

I tried to change as little of the code as possible, but some modifications were needed to get JSHint to pass. I also had to loosen the JSHint validation rules, but those can be fixed later if desired.

And thank you for open sourcing this! It's a great little library.