Raise TypeError if unicode string is used as key

Fixes #144.
Add a few more test cases.
Add lint support.
_compat: Fix some lint.
Fix #140: Don't expect 'wsgi.input' to have 'seek' method

The WSGI specification does not require 'wsgi.input' to have a 'seek'
method.  However, the gunzipping code in the standard library of Python
2.x uses that method.  We work around this by buffering data from a
'wsgi.input' that lacks this method into a temporary file.

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
Fix long line, running with -O.
Merge branch 'ticket-144' of git://github.com/jonashaag/dulwich
Break long lines, update NEWS.