made state manager like hump but more to my style so that the code is more DRY, made camera work and follow the sprite