Made ProjectUpdater a first-class object

- Make PayloadProcessor less stateful