LevelData is now split into LevelData and LevelStatus, and is correctly managed as an immutable resource