Added a bunch of base implementations for all the interfaces.
- With the base implementations, we save a lot of time by reducing boilerplate code.
- Added a few examples for how to implement basic actions, goals and triggers.
- Created a teamable interface, which represents any sort of team within a game
- Began actually implementing the Main class.
- Improved a few interfaces, such as the Goalable and Gameable interfaces, because they were not quite good enough as it turns out.
- Removed Saving/Loading from the managable interface, because we do not want it there. that should be taken care of by the SaveManager.