Make sure that exchange completion listeners are always called, even when the connection is terminated abnormally.
Make sure that saved request buffers are always returned to the pool
Fix buffer leak in the HTTP response coduit

The leak could occur if the request was terminated prematurly
Don't attempt to flush the response if the connection is closed

The prevents a situation where buffers could be allocated in the response that would then never be cleaned.
Make sure to clean up buffers in web socket connections
Add debugging buffer pool to check for buffer leaks
Use ConcurrentDirectQueue.newInstance()
Fix bug where writer would be closed if close() was called from within an include
Fix bug introduced by earlier commit
Work around potential buffer leak