Use grep without find to discover @directives.
Provide BuildContext.prototype.spawnP and .defer as conveniences.
Fix a small bug in tryNextResolverP.
Avoid bizarre String.prototype.replace backreferencing behavior.

Somehow

    var $ = require('$');

was ending up horribly mangled:

    var $ = require('}););

This fixes that, and probably many other string replacement quirks.