A simple class to implement streaming request bodies with lengths.
>>> from cStringIO import StringIO
>>> sb = StreamingBody(StringIO("ABCD"), 4)
>>> sb
<StreamingBody(<cStringIO.StringI object at 0x...>, 4)>
>>> len(sb)
4
Features automatic length-checking on files:
>>> sb = StreamingBody(open('file.txt'))
>>> sb
<StreamingBody(<open file 'file.txt', mode 'r' at 0x...>, 111)>