renamed wrap to pipe and gave it a more friendly API