[#2090] Correctly format DefaultHttpRequest#toString()
ChannelOutboundBuffer returns total pending write size

total pending write size may be used to optimize write batching
[#2086] Fix race which could produce NPE in AbstractNioUnsafe.finishConnect
Fix a regression in SslHandler where delegated tasks run in a different executor makes the session hang

- Fixes #2098
- Deprecate specifying an alternative Executor for delegated tasks for SslHandler
Remove the deprecated constructors in SslHandler
Move the reusable classes in netty-testsuite to main/java/src and deploy them
Fix a potential NPE due to the race between a connection attempt and its cancellation

- should fix #2086
Remove unnecessary test resource
Do not deploy an unused test jar
Remove unnecessary trailing newline
[#2104] Make sure we only act on the SelectionKey if it is valid
Move the testsuite classes back to src/test
Do not deploy the testsuite
Fix a bug where HttpObjectDecoder produces LastHttpContent after entering BAD_MESSAGE state

- Fixes #2103
- Added LastHttpContent.EMPTY_LAST_CONTENT.toString() for athestic reasons.
Allow to extend the provided tests by the testsuite

This allows custom transport implementations to just re-use the tests provided by netty and so make sure everything works like expected.
Improves SelectedProtocol enum to avoid boilerplate on subclasses

NPN server providers return a String version of the negotiated protocol
and the getProtocolByName method allows to easily get an instance of
the SelectedProtocol enum and avoid the need for a switch statement in
each subclass to match the String against the enum value.
Cleanup and remove get prefix of method to be more inline with our API