CURA-4482
UM2 by default doesn't have variants, but if the user enables Olsson
Block, the variant option will become available. This commit fixes the
following cases:
- Make sure that the variant is set on the extruder stack but not the
global stack
- Extruder stacks don't contain information such as has_variant. Such
info should be retrieved from the global stack and not just from the
definition container because they can be overriden by other
containers.