Switch to Grunt
Split app.coffee more
Fix tests