Add 'coverage' profile that generates the test coverage report
Prefer interface to implementation in type declaration

This fixes the build failure with JDK 8 due to animal sniffer error
Fix the compilation error in ConcurrentHashMapV8 + JDK8
Fix a build error

which occurred when -Pcoverage was not specified
[#2212] Skip autobahntestsuite when using -DskipTests
Fix a build error related with NPN version and JDK8
Remove a version clause added by mistake
Remove the StringCache option which was removed in JDK8
[#2219] Fix javadocs of HttpObjectAggregator to show correct handler order in pipeline
Fix a bug where DefaultPromise.setUncancellable() returns a wrong value

- Fixes #2220
- Its Javadoc says it returns true when the promise is done (but not cancelled) or the promise is uncancellable, but it returns false when the promise is done.
Fix a bug where DefaultPromise.setUncancellable() returns a wrong value

- Fixes #2220 - again
- Missing negation
Fix external Javadoc url
Make most outbound operations are cancellable

- Inspired by #2214
- It actually reduces the chance of trying to marking a cancelled promise as success again, which raises an IllegalStateException.
Make the build not fail in JDK8 until we fix Javadoc
Make most outbound operations cancellable / More robust promise update

- Inspired by #2214 by @normanmaurer
- Call setUncancellable() before performing an outbound operation
- Add safeSetSuccess/Failure() and use them wherever
Do not warn if failed to mark a void promise as success

- it's always supposed to fail.
Allow to cancel non-flushed writes
Correctly respect isAutoRead() and make it consistent across OIO/NIO
Allow to set IoRatio to 100%
Prettify exception message