Implemented repo downloads using streams

This implements feature request #93 using the requirements stated in #94

Shouldn't this be possible with plain `BytesIO` or `StringIO`? What's special about your buffer implementation?