Let GlobalShortcutsRegistry manage all components
Component and KServiceActionComponent are always created with the 3rd arg being the static instance returned by GlobalShortcutsRegistry::self(), i.e. even though the constructors take a nullptr for the 3rd arg, this doesn't actually happen anywhere in this code. Also I couldn't find any code outside of KGlobalAccel that instantiates either of those classes.
Make GlobalShortcutsRegistry create those objects. This makes it clearer it owns/manages them.
Rename addComponent() to registerComponent().
Remove GlobalShortcutsRegistry::allMainComponents(), not used any more.