WIP 

Just opening a PR to get feedback on the re-factoring for Worker. Changes still in progress.
Ugly, not the preferred pattern.