Huge changes to implement Model-View-ViewModel. Separation of the view and the project model will let us improve the view without drastically changing the implementation of the backed.
 It also means we can work on optimisation for the backend separately and use Unit Tests to ensure we're capturing/writing game data appropriately.