I didn't like that adding some part of the state meant going from root all the way down to where it's actually used. If it was some new standalone state (as opposed to just adding a property to existing one), it meant modifying all the classes from root all the way down.