Adds reusable channels.

Channels are gotten at the last possible moment for use and then
immediately returned.
Uses correlation id for rpc-calls