We have never really specified how this should work, so first we have to figure out what's correct.
Questions to consider:
- Should a root path set the value back on the root?
- Should a parent skip the step in front of it when we reverse?
- Should we skip operations or only paths?
- Should parent skip one or many sets?