Revert "[#1131] Codecs must not cache next buffer during processing"

This reverts commit b1775a3223e54e076f0abba85360a19ded368498.
HexDumpProxy should log hex dump.
Add I/O ratio parameter to NioEventLoop

- Add SingleThreadEventExecutor.runAllTasks(timeout)
- Add NioEventLoop.ioRatio property
- Merge SelectorUtil into NioEventLoop
Add an empty line
Fix a bug where AbstractByteBuf.order() doesn't return a swapped buffer if capacity is 0.

- Fixes #1152
Fix a bug where TypeParameterMatcher does not detect the case where the type parameter is derived from an outer class

- Fixes #1153
Specify timeout on Selector.select()
Fix an incorrect modulo operation
Remove ChannelHandlerContext.types() which is barely useful / Remove ChannelHandlerType together
Remove DefaultChannelHandlerContext.needsLazyBufInit which is used only by the head handler
Move the methods that's only used by DefaultChannelPipeline to DefaultChannelPipeline
Fix more memory leaks in the buffer tests
Fix memory leak in AbstractEmbeddedChannel

- Allow a transport implementation to perform an arbitrary task when a channel has been deregistered completely
Fix memory leak in DefaultCompositeByteBuf when a component is another CompositeByteBuf
Fix memory leak in DefaultCompositeByteBuf when a component is another CompositeByteBuf / Allow retain() and release() on a derived buffer
Fix more memory leaks in buffer tests
Skip OSGi testsuite if 'no-osgi' profile is active
Make ByteArrayEncoder sharable
Port test for handler's life-cycle processing into master branch.
[#1159] Make sure we not produce an empty bytebuf on decodeLast(..)