Text this: Patterns and Skeletons for Parallel and Distributed Computing /