Re-work concurrency with Pipes