This removes the WorkerThread class and many of the complications around it. Instead of having a generic worker, there is now the `QueueRunnerService` which takes on all the resposibilities for handling queued tasks. This is one step towards removing `FIXMEGlobal`