Basic framework for menu system