Running external commands asynchronously.
BgJobManager that has a
limit on the max number of background tasks.
an invocation of jobs is independent of any others, and not tied to the ShIO monad in any way.
This blocks the execution of the program until all
background jobs are finished.
Returns the promised result from a backgrounded task. Blocks until the task completes.