Add ability for streams to release the transport object back to the pool.
Allow unwrapped connection acquisition in client operations.

Resources may now release themselves back to the pool, rather than
requiring the caller to have a reference to the pool.
Change streaming operations to manually acquire connections.

This will require the caller to exhaust the iterator, use
contextlib.closing or manually close the generator when done.