Wrap promise resolutions in runloops. Avoids auto-runs

Hm, PR #4 is *almost* as neat as having PR #1.

The resolve callback of a promise should be wrapped in a runloop. If not, it causes an auto-run.

:-D Fun stuff!