Switch to gulp for builds, replace es6ify, switch to CJS modules

This PR does a few things to make it easier to manage this repo:

* Use CJS instead of ES6 for our files. We ran into major issues while trying to dogfood, particularly around Traceur, and it seems easier to just keep it CJS. While it's nice in theory to use ES6 modules here, it just wasn't working out in practice.
* Use Gulp for builds over Grunt, since the pipeline is much simpler to track. This PR still has some Grunt in it, since I didn't want to try converting `tasks/features.js` over quite yet
* Since we're using Gulp, use `gulp-traceur` for builds. This has a much more up-to-date version of Traceur than es6ify does.