Allow forced render mode for restore operations

Allows clients to progressively rerender in a depth-first manner. This minimizes the amount of time that the UI is in an indeterminate state for cases like a mismatched version.

The assumption here is that the number of differences between any given version will be relatively small so the perceived flux between a depth-first rerender and attempting to rerender from the root will be much lower.
So is the parameter called `forceRestore` (as in docs) or `forceRerender`?