Move frame_type parameter in front of stream_id

This commit moves frame_type parameter of
nghttp2_data_soruce_read_length_callback in front of stream_id
parameter.  The motivation is that other callback is generally put
frame related parameters first.  To make it consistent, we move
frame_type, which is frame ralted parameter, to the left.
Wrap longer lines (> 80)
Use datamax if buffer reallocation failed
Fix crash when buffer was reallocated after read_length_callback

Added test for this crash.
Check buffer capacity explicitly
Add test to submit DATA frame twice

This commit adds test to submit DATA frame twice and fixes the bug
that 2nd DATA is not sent.
python: Fix build error
nghttpx: Don't consume response data in downstream on_stream_close_callback

Even after on_stream_close_callback, Http2DownstreamConnection is
still alive and upstream keeps sending response to the client.  The
consumed bytes are processed normally (data_source_read_callback) and
also we have a code to consume all allocated bytes for
Http2DownstreamConnection object when it is deleted.  This means that
we don't need to and should not consume response data in downstream
on_stream_close_callback.  If we do, we may get assertion error in
Http2DownstreamConnection::resume_read().
python: Add version
nghttpx: Fix location rewrite is failed because request headers are empty

Previously we empties request headers after they are sent to
downstream in order to free memory.  But it turns out that we use
request headers when rewriting location header response field.  Also
user reported that request headers are useful to add new features.
This commits defers the deletion of request headers to the point when
response headers are deleted (which is after response headers are sent
to upstream client).
nghttpx: Add --listener-disable-timeout option
nghttpx: Strict integer config validation
tests: Include config.h
nghttpx: Move --backend-http-proxy-uri to Connections section
Add Makefile for MSVC

Contributed by G. Vanem