Renamed AbstractState to AGameState

The prefix 'A' means that this class is abstract
Changed the Game States are updated.

The new way is more logical if I'll be using an Entity Framework
Changed access modifier on activation functions in AGameState