The delegate is optional, so it shouldn't be part of the initializers
Use custom object for menu items. Refactoring