split up/module-ify Stream.hs