Call pull when needsMore is true

I'm creating this pull request so I can comment on it; apparently you can't comment on things without them being pull requests :P
I think we can move the "If _needsMore_ is an abrupt completion, call `this.[[error]]`(_needsMore_.[[value]])" into this operation as step 3, as long as we then still "return _needsMore_" as step 4.