When stopping a worker, if the queues a worker is pooling from are empty, they are removed from the queues list.
When clearing a queue, if the queues are empty, they are removed from the queues list.