Currently, when a local connect is initiated, the client just
immediately gets a BiDi, regardless of whether the connect succeeds or
fails. We need to add a oneshot channel type thing so that the client
can wait for the connection to be handshaked and receive an error if
the handshake failed, but I haven't done that yet.
from #2:
Depends on #11.