LR-99: Battle Engine v1

I am open to this, though I am not currently sure how usePotion's execution would depend on its context.