refactored recorders to sinks (thanks to @fiat_money)
moved VectorSink to io package
moved iterators to io package