battle.py relocated to model.