Optimize Recycler.Stack

- No need to use a deque at all
- Increase the initial capacity so that there's no practical chance of capacity expansion
Add ChannelHandlerContext.isRemoved() to easily detect the removal of a ChannelHandler while in a method.
Simplify the logic for updating OP_WRITE in the NIO transport

- Removed code duplication
Remove an unnecessary empty line
Remove the AIO transport as NIO is just faster

The AIO transport was added in the past as we hoped it would have better latency as the NIO transport. But in reality this was never the case.
So there is no reason to use the AIO transport at all. It just put more burden on us as we need to also support it and fix bugs.
Because of this we dedicided to remove it for now. It will stay in the master_with_aio_transport branch so we can pick it up later again if it is ever needed.
Add ResourceLeakDetector.ENABLED

.. to provide a way to check if resource leak detection was enabled programmatically.
Recycle PooledByteBuf partially

- Related issue: #1397
- Resource leak detection should be turned off and the maxCapacity has to be Integer.MAX_VALUE
- It's technically possible to pool PooledByteBufs with different maxCapacity, which will be addressed in another commit.
Remove MessageList.remove(*) , MessageList.set(*) and MessageList.add(i,*)
Merge branch 'master' of github.com:netty/netty
Optimize the way messages are added from one MessageList to another one
Add javadocs
Optimize PooledUnsafeDirectByteBuf.newInternalNioBuffer()

- No need to produce garbage
SPDY: update object hierarchy
Replace the sun.nio.ch.SelectorImpl.selectedKeys with faster one

- Yield much less garbage
- Slight performance gain (1~2%)
Fix #1435 and #1436 by reverting 7f7bf304b0b43a1445e68c15ee6f6403c7ca5b9e

Different PooledByteBufs can have the reference to the same PooledChunk (and its ByteBuffer), so it's incorrect not to create a duplicate.
[#1390] Make sure RxtxChannel does not block forever when reading
Make sure writing empty ByteBuf will not cause a stavation.

This also fixes [#1436]
Let MessageList implement Iterable
Use Correct NoSuchElementException
Make sure WebSocketFrameAggregator and HttpObjectAggregator don't leak ByteBufs