Refactored for shops by fixing overworld generation and improving triggers
between overworld and game
Removed OverworldEvents. The OverworldController should act directly on
the OverworldView or the GameController, no events are needed.
Preventing multiple interactions with the same party