Move async + tracking into core, update Gruntfile.js, trim dead code