Add basic streaming backend support.

Just a quick and dirty streaming backend. Let me know if class / module / setting names should be different, I just ended up picking something without putting to much thought into any of it.

As for using actual stream metadata and such I don't see any point on adding any of that until #270 gets worked out.