Fix realization of derived variants This commit changes the way derived variants are handled during serialization. Before, we used to record only the fact that there were derived variants, and the realized component metadata class was reproducing what the `getDerivedVariants` method was doing in the original metadata. Unfortunately, this led to forgetting about this fact, because in most cases we don't realize all variants eagerly, and test coverage was missing.
Instead, now, the realized component metadata makes use of the original derived variants and _serializes_ them. This is only done for Maven metadata now, as this is the only component type which actually produced derived variants.
This commit also introduces a new test suite called `ForceRealizeTest` which runs the full integration test suite, but forcing the realization of all variants. This can be executed typically by running `myProject:integForceRealizeTest`. This test suite runs in embedded mode by default, in order to be fast.