Weak Context Scope
open class WeakContextScope<in C>(val newRepo: () -> ScopeRegistry = { StandardScopeRegistry() }) : Scope<C>
Scope that map scope registries associated to weak contexts.
In essence, the context is weak, and for a given context, its registry will be GC'd when it is itself GC'd.