Fix #67: BufferedStream returns unicode string.

This is a simple case of using a unicode string to join where we
should be using a bytes string.
Fix seeking to anything except 0 with BufferedStream.

Previously, given a non-zero location to seek to, we would always
seek to the start of the second buffered chunk.
Fix seeking to the end of the buffered data in BufferedStream.

Previously, you could only seek to the final character, and not the
current end of the buffered data.
Add tests for BufferedStream.
Fix #90: new PEP8 errors. These are both slight indentation bugs.
Fix #78: drop RecursiveTreeWalker.

Nothing has used this for years, and it shouldn't be used as it can
easily run out of stack (and a non-recursive algorithm is scarcely
more complex).
Move import/constants to top of file to match style.
Bump version number to 1.0b3.
Add changelog for 1.0b3 (uh, this ought to be have done before).
Bump version to 1.0b4
Add examples using urllib2 and urllib.request for HTTP Content-Type

I've seen many use html5lib completely ignoring any HTTP-layer given
character encoding. Would be better to lead them in the right direction.
Fix #83: Stop testing the DOM treewalker with pxdom

This hasn't actually been tested in years and almost certainly won't
work; furthermore pxdom isn't supported under Python 3 so it doesn't
provide any testing whatsoever for a strict DOM implementation there.