support source.pipe(duplex).pipe(sink)

just a small addition to support the passing of duplex pull-streams into .pipe

this is pertinent to websocket-pull-stream as of v2 which has two way comms