Throw a proper error when something goes wrong.

When an error is encountered during compilation, let Grunt know so that it will prevent the execution of dependent tasks.

This change has been around a while and I'd still like to get it into the plugin. All the other Grunt plugins work in this way and our build flow depends on the process failing when something goes wrong.

(Sorry, had to recreate #20 as I moved these changes to a branch)