sources and sinks should use io.Reader/Writer

not related to this PR, but to show it sorts, would like source row that's not already sorted.