using readable-stream module
docs for new API
add pipe to self test
fixes calling dest stream methods
read from source immediately then wait for `readable` event
update node versions