TODO - Explain how world changes turn on turn, player visibility of this and why we're using Window traits