initial version of a grunt-based build system

grunt is much more extensible than a plain Makefile is.

This commit is WIP and subject to change.