Support passing in "buffer" objects again where bytestrings are expected.

This fixes bzr's use of paramiko.

Fixes issue #343/#285.
Merge branch 'master' into 352-int
Changelog re #285, re #352