use r.js proper rather than amd-optimize (bug 1092718, 1078093)

using rjs is so much easier and powerful. It's Gulp's recommended way to build require projects. At first I went with gulp-requirejs which was a bad idea since it was blacklisted and didn't mesh gulp+rjs well. Then I went with amd-optimize which doesn't have enough features. So rjs does everything for us.

- Handles including modules like almond without concatting
- Allows an insertRequire so we don't need init.js
- Handles source maps easily
- Removes views/tests easily while stubbing, reducing our include.js size by a tiny bit
omg, it looks like extend already ships with node:

```js
var extend = require('util')._extend;
console.log(extend({fart: 'poop'}, {a: 'apple'}));
```