CCPool.MakeSourcerun f schedules f for being executed in the thread pool.
run1 f x is similar to run (fun () -> f x).
active () is true as long as stop() has not been called yet.
After calling stop (), most functions will raise Stopped. This has the effect of preventing new tasks from being executed.