Improve MenuStrip class

MenuStrips now support tagged items: MenuStrip.open() modified to return
the tag associated with the chosen item instead of its text.
Game framework refactoring

Refactored the game definition framework to make it easier to manage
definitions