support duplex pull-streams
export helpers for source and sink
add example to read me