Given a private side SV tries to find if the SV has a shared backend,
by looking for the magic.
Recursively unlocks a shared sv.
Recursive locks on a sharedsv.
Locks are dynamically scoped at the level of the first lock.
Saves a space for keeping SVs wider than an interpreter,
currently only stores a pointer to the first interpreter.