Otion to track transients via WeakReference<T> collection and dispose along with container.
Requestor can assume ownership of a newly created transient T instance by depending upon Unique<T> (which skips tracking the reference, but also throws for singletons), after which it must ensure correct disposal of the served transient, in its Dispose method or otherwise.