the ```Func<Owned<IWorkerTask<T>>> workerTaskFactory``` parameter allows for us to not take a hard dependency on a project specific container instance eg ```WorkerContainer.Instance.Resolve<T>```