Fix Promise.prototype.then to conform to spec.

I assumed there was a think-o in the spec, but the behavior was apparently
intentional.  See https://bugs.ecmascript.org/show_bug.cgi?id=2513