Adds reusable channels.

Channels are gotten at the last possible moment for use and then
immediately returned.

/cc @will2357 @sshillo @wija