added a bunch of streaming code; in theory should let us load/save data, but #untested #githashtag