HTTP/2 to HTTP priority translation

Motivation:

The priority information reported by the HTTP/2 to HTTP tranlsation layer is not correct in all situations.
The HTTP translation layer is not using the Http2Connection.Listener interface to track tree restructures.
This incorrect information is being sent up to clients and is misleading.

Modifications:
-Restructure InboundHttp2ToHttpAdapter to allow a default data/header mode
-Extend this interface to provide an optional priority translation layer

Result:
-Priority information being correctly reported in HTTP/2 to HTTP translation layer
-Cleaner code with seperation of concerns (optional priority conversion).
This is my wrapper method around a ctx.fireChannelRead(...).  I do some final clean up stuff before I actually call the ctx.fireChannelRead(...) method here https://github.com/netty/netty/pull/2820/files#diff-136ad4a73f057af8e527a0a3ae8869e7R352 (search for `protected void fireChannelRead(ChannelHandlerContext ctx, FullHttpMessage msg, int streamId)` if this link doesn't work).  This method exists because it is called in a few places and it extracts common code.