modules Widget and Compiler use tuples to represent widgets
submenus added
menu :highlight event works