When entering a clock, the current state of the global is saved If another
clock was already entered, it will revert back to that when exiting.
When we exit, if the monkey-patched global proxies get called, they will
revert back to whatever the saved value was when they were patched. If that
is another exited clock, it will proxy back to its original saved state, and
so on, eventually hitting the original global state again if all clocks in
the stack have been exited.
When entering a clock, the current state of the global is saved If another clock was already entered, it will revert back to that when exiting.
When we exit, if the monkey-patched global proxies get called, they will revert back to whatever the saved value was when they were patched. If that is another exited clock, it will proxy back to its original saved state, and so on, eventually hitting the original global state again if all clocks in the stack have been exited.