Make [[enqueue]] consult needsMore even when state was waiting

Also adds code to handle an error in needsMore

Issue: https://github.com/whatwg/streams/issues/119#issuecomment-47197022
Sounds good. I just left size not triggering error because it's rescueable, but yeah, let's just enter errored state when size() is broken :)