Sends an http response to the channel. The listener will be executed once the send process has been
completed.
Parameters:
response - to send to channel
listener - to execute upon send completion. Note that this listener is usually completed on a network thread in a context in
which there's a risk of stack overflows if on close it calls back into the network layer in a manner that might end
up nesting too deeply. When in doubt, dispatch any further work onto a separate thread.