feat(build): split build into build+compile

To increase build speed during iterative development, the build task
has been split into two tasks: build and compile. The build task
performs only the minimum amount of work necessary to test and run your
app; the compile task does all the production-ready stuff like
minification and concatenation.

The default grunt task now performs a build and a compile.

A large chunk of this feature comes from @ajoslin. Thanks!!!