Add build system via grunt

Whilst the library has been broken up into modules, there is no way to quickly build from source. We can use grunt to piece together each module and even run the tests in a headless browser via phantomjs.

That's where I've got to with this pull request. It can be taken much further by adding in things like linting, minification and a watch task.

Hope you like :)