refactor make_print to use streams always
test filters on streams
can use transform streams as filters