Extract CastToPromise from `Promise.cast`.

See #64; this will help the ES module loaders spec.

(This thing dies and is resurrected more times than a superhero.)