Allow `BattleScripts` to override properties of `Battle`

This allows functions defined as properties of `BattleScripts`
(i.e. in scripts.js) to override properties of a `Battle` object.