Optimize SslHandler

- Fixes #1905
- Call ctx.flush() only when necessary
- Improve the estimation of application and packet buffer sizes
- decode() method now tries to call unwrap() with as many SSL records as
  possible to reduce the number of events triggered
Simpler toString() for ByteBufAllocators
Don't create an EmbeddedSocketAddress every time
Improve docstrings for and of
Merge remote-tracking branch: upstream/master