HTTP/2 Draft 15

Motivation:
A new draft of the HTTP/2 spec has been released.

Modifications:
Make updates as defined in https://tools.ietf.org/html/draft-ietf-httpbis-http2-15

Result:
HTTP/2 codec is draft 15 compliant.
@Scottmitch actually I was referring to section 10.3 https://tools.ietf.org/html/draft-ietf-httpbis-http2-15#section-10.3

Which states:

    The HTTP/2 header field encoding allows the expression of names that
    are not valid field names in the Internet Message Syntax used by
    HTTP/1.1.  Requests or responses containing invalid header field
    names MUST be treated as malformed (Section 8.1.2.6).  An
    intermediary therefore cannot translate an HTTP/2 request or response
    containing an invalid field name into an HTTP/1.1 message.

    Similarly, HTTP/2 allows header field values that are not valid.
    While most of the values that can be encoded will not alter header
    field parsing, carriage return (CR, ASCII 0xd), line feed (LF, ASCII
    0xa), and the zero character (NUL, ASCII 0x0) might be exploited by
    an attacker if they are translater verbatim.  Any request or response
    that contains a character not permitted in a header field value MUST
    be treated as malformed (Section 8.1.2.6).  Valid characters are
    defined by the "field-content" ABNF rule in Section 3.2 of [RFC7230].

Now that I read it again, it does appear to be related specifically to the translation layer.  I suppose we could leave it out of the framing layer as you've suggested.