Added abstract MenuItem class