The goal is to still use KnpMenuBundle for all of our menus but we want to change the approach on how the menus are created. We want to get rid of service defined menu items as it doesn't provide enough extensibility. Some actions i.e. removing menu items, are not allowed with this approach.
New approach has to expose menu builder as a service which is the best practice according to symfony's cookbook. It allows extending menus using event subscribers. This gives future developers almost unlimited possiblities such as reordering, renaming, restyling, removing of any menu items.
New menu system will be shared across top menu, left and right sidebars.