Make menuitem more permissive, add interfaces that define interaction.
Merge pull request #1485 from concrete5/feature/menu-improvement

Make menuitem more permissive, add interfaces that define interaction.