Implement dependency based priority
Limit the number of streams in one dependency tree
Make deflater bad state if parsing HEADERS/PUSH_PROMISE failed
Call on_stream_close_callback for a stream in reserved state

This is useful because application may allocate resources for it and
wants to free the resources if they are not used anymore.
src: Print padlen first
Update doc
Retain incoming closed streams for dependency tree

The number of closed stream to keep is limited by
MAX_CONCURRENT_STREAMS - current active stream.
Fail nghttp2_submit_settings if there is pending SETTINGS frame in-flight

pending_local_max_concurrent_stream is now set in
nghttp2_session_add_settings, rather than after frame was sent.
Ignore priority request if resultant tree has cycle
Update doc
Replace HTTP/2.0 with HTTP/2
Define NGHTTP2_CLIENT_CONNECTION_PREFACE macro

NGHTTP2_CLIENT_CONNECTION_PREFACE has the same content with
NGHTTP2_CLIENT_CONNECTION_HEADER, which is now obsoleted by
NGHTTP2_CLIENT_CONNECTION_PREFACE.
Update tutorial
Define NGHTTP2_CLEARTEXT_PROTO_VERSION_ID

This identifier string is used if HTTP/2 is used over cleartext TCP.
src: Compile defaltehd and inflatehd with c++

This commit also fixes defaltehd always reports output length is 0.
Share stream_group weight among streams marked as top
Adjust weight when pushing data to queue
src: Output debug data in GOAWAY in printable ascii

Non printable ascii is printed as ".".
Implement ALTSVC frame
Check payload length when submitting GOAWAY and ALTSVC