Implement Python 2.7 support

Thanks for the comprehensive test suite; it made this port a snap. The only externally-facing change I had to make was removing the magic `*` argument in `HTTP20Connection.__init__()` - if you like, I can restore it on Python 3 with trickery a la `SocketServerThread`.

Barring the introduction of pyOpenSSL, supporting NPN is impossible on Python 2.7, so for now, the client assumes the server speaks HTTP/2.0 (referred to in the spec as "with prior knowledge").

An automatic migration tool like `2to3` was unneeded, and I think it's best to keep it that way.