Use cached channel for syncing with outframer

Makes it so that the channel allocation is per stream, not per frame.
Only create read channel if request has body.

One more allocation eliminated.