Support SOCKS proxies.

The trickiest part of this change is the SOCKS 5 proxy implemented
to make testing possible. Fortunately the protocol is very easy, and
shows off Okio.

Closes https://github.com/square/okhttp/issues/1009
Ah, gotcha. It calls `emitCompleteSegments` which is what I was thinking of.