Designing Casanova: a language for games