0.9.3 grunt refactor

Lots of stuff got moved around, renamed, etc. I've run all the grunt tasks to make sure they still work but it might be a good idea to verify the changes before merging. Probably the easiest way is to clone my fork and pull down the latest 0.9.3-grunt-refactor branch.

I moved the `watch` task out of the `default` task so `default` could be included in `test` and `dist`. Also `jshint` is only being run against the final compiled coffeescript output which allowed me to remove the `concat` task. However, I can see the value of having it run against the individual files pre-concat so I can add that back in, just say so in the comments and I'll do that before you merge the PR.

The other big thing is I tried to make all of the tasks use the [Compact Format](http://gruntjs.com/configuring-tasks#compact-format) so they look consistent. Some of the more exotic tasks have their own way of doing things so it's not 100% the same across the board but in general they're normalized.