Pool allows for parallel processing of items. When creating a pool a
Reducer is responsible for reducing multiple inputs into a single output. This is used by the workpool to condense multiple work outputs to a single output.
WaitHandle provides a handle to wait for the reduced output value.
Create a new pool Builder.