Created worklist factory for adding/removing a plate from the worklist

This factory is in charge of adding and removing plates from the worklist.
This allows us to reuse the logic of adding/removing plates from anywhere.
Simply inject the factory and call addPlateToWorkList or removePalteFromWorkList.
I have not implemented any tests.
Updating front end to use new worklist factory