Also, I'm not a fan of the method names, since they mirror the Promise constructor's work function params which behave differently. But if that's the way the spec is going, then I'll have to lump it.