Properly recurse when getting pipeline for reporting

Before, it wouldn't work if you had pipelines that were split into more than
two segments using .readable()/.duplex()