More small state refactorings
Still slowly chipping away at state...
By the way, one idea to avoid one of the last uses of node.get_state_mut() would be to replace set_overridden_properties with instead having a get_overridden_values() -> &SpecifiedValues as part of NodeTrait. The default implementation would return a SpecifiedValues where all values are unspecified. Then some nodes could override that. When we do the cascade we set overridden_values after specified_values... Dunno maybe it is too much for the few cases where we need the override?