Initial web socket API.

This PR is to a `websocket` feature branch for later merging into `master`.
Can I start writing multiple messages in parallel?

BufferedSink sinkA = webSocket.textWriter();
BufferedSink sinkB = webSocket.textWriter();
sinkA.writeUtf8("a");
sinkB.writeUtf8("b");
sinkB.close();
sinkA.close();