Persist state

Create an introductory framework for a persistance layer. It should be able to abstract away two concepts:

- Having multiple game instances e.g. 3 seasons into managing a FC Valencia, another 1 season into managing East Fife FC.
- Have the ability to persist and load these games from an arbitrary database backend.