Feature: Advanced DynamicActionMergers

Up to now, the dynamic action merger interface is only able to call back to the consumer code when the internal menu structure has to be rebuild.
This patchset adds another mode to the DAM interface, so that it is possible to register actions with the DAM or simple set a list with mappings from "Display" to "Variant", from which the DAM will internally create `QAction` objects and handle their triggering; resulting in a single emitted signal that has the Variant as parameter.