Buffered encoder 4.0

Introduce a new abstract codec called MessageToBufferedByteEncoder which allows to buffer written data into one buffer.

Using the sub-class in protocols that allows for pipelining or for cases where the messages are made out of multiple parts can improve performance a lot. To show this HTTP was moved over to use the MessageToBufferedByteEncoder which shows a large performance improvement
Add a period if you want a complete sentence.  Otherwise make it brief:

    @Sharable annotation not allowed

or

    @Sharable annotation is not allowed.

I prefer the former, like I did for most `IllegalStateException` messages.