tor-proto: allow_stream_requests now waits until the control message is received.
ClientCirc::allow_stream_requests
is now async
and waits until the
AwaitIncomingStream
control message is processed by the reactor.
This guarantees that by the time the allow_stream_requests
future
resolves, the reactor is ready to process BEGIN/BEGIN_DIR/RESOLVE cells.
Previously, the client tasks from allow_stream_requests tests had to
sleep before sending the BEGIN cell to give the reactor time to process
the AwaitIncomingStream
control message (which tells the reactor to
expect incoming BEGIN/BEGIN_DIR/RESOLVE cells on the circuit).
Fixes #994 (closed)