Make WritableStream's wait() return a rejected promise once close()-ed

See https://github.com/whatwg/streams/issues/140#issuecomment-49323433
Check that error call on WritableStream in waiting state updates writablePromise correctly
Add error argument to start of WritableStream

Issue: https://github.com/whatwg/streams/issues/139
Update the explanation of constructor options that can return a promise
Refactor callPull into callPull and callOrSchedulePull
Add [[callOrScheduleAdvanceQueue]] to the IDL
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
Handle strategies that throw on size() better in readable streams

See https://github.com/whatwg/streams/pull/155/files#discussion_r15358699. Part of a larger effort tracked as #128.
add duplex streams to faq
Clarify pipeTo vs. pipeThrough FAQ entry a bit.
Tests for exceptions in [[syncStateWithQueue]]

See #128.
Handle throwy needsMore in writable streams
Use abrupt completion terminology more.
Fix metadata to make Bikeshed happy.

Removes spaces at the head of metadata from index.bs to make it work with Bikeshed. Fixes #163.
Don't let writable streams transition from errored to closed.

The previous logic would transition to closed upon fulfillment of the promise returned from the underlying sink's close(), even if in the meantime the stream had become errored.
Basic transform stream
Got default close propagation working
Implement flushing
Handle errors thrown by transform
Fix tests in light of bda8ab