Make PendingWrites recyclable to reduce GC pressure
[#1626] Use static fields for default values
[#1628] Fix bug in ReadOnlyByteByteBufferBuf where get operations threw ReadOnlyBufferException
Fix up ChannelPipeline javadocs by add lost "don't "
[#1630] Fix re-entrance bug in ChannelOutboundBuffer.remove(...)
[#1624] Fix resource leak when writing to a closed / not-open channel
[#1606] Reduce overhead during writes because of ChannelPromise validation
Fix types in javadocs
[#1612] Allow to disable resource leak detection via API
Remove ResourceLeakDetector.ENABLED / Replace ResourceLeakDetector.is/setDisabled() with is/setEnabled()

- Related: #1612
Remove an unnecessary empty line
[#1637] Check for null parameters
Fix compile error
Simplify the validation logic proposed in 25f96b164498988439c38baf6ff4c57763464824
Change the contract of ResourceLeakDetector.open() so that unsampled resources are recycled

- This also fixes the problem introduced while trying to implement #1612 (Allow to disable resource leak detection).
[#1612] No need for volatile as it is not needed to be precise
Merge ChannelOutboundBuffer.failUnflushed() and recycle() into a single method and make sure it is run later on reentrance

- Previously, failUnflushed() did not run when inFail is true, which made unflushed writes are not released on reentrance.   This has been fixed by this commit.
- Also, AbstractUnsafe.outboundBuffer is set to null as early as possible to remove the chance of any write attempts made after the closure.
Remove Arrays.fill(..., null)

.. because we can just set each element to null while looping
[#1623] Fix javadocs for ChannelGroup
[#1639] Fix bug where SpdyOrHttpChooser may not buffer data correctly during protocol detection