Ability to have different KirigamiThemes in the same process
This is intended to use primarily in Plasma. It adds the ability to define a custom theme for areas of the application based on a property on the relevant QQmlContext (a QProperty on the context, not a contextProperty, so it's accessible only on the c++ side).
The goal is to allow usage of Kirigami.Theme and Kirigami.Units inside plasmoids. They will then use the KirigamiPlasmaTheme instance, while everything outside, such as config dialogs will use the org.kde.desktop style.
This will unlock the ability to remove any components in PlasmaCore, PlasmaComponents, and PlasmaExtras that don't use any SVG styling and simply duplicate their Kirigami counterparts, with the only difference being that they get their colors from the Plasma theme, rather than the desktop theme. Such functionality will no longer be needed, and we can use the Kirigami versions with no issues.