Update Grunt to 0.4, tweak JSHint config
Fix linting issues
Improve notifier scheduling to use a trampoline and don't unnecessarily wait for a next tick