Fix for TaskExecutorDistributors not removing themselves, and getting into an infinite loop....this also prevents constructing LinkedLists that are never used