I've got some questions as I'm trying to grok this. First, to make sure I
understand: unowned refs would need to be set to nil so the type based
allocater can free them, and owned refs will be automatically freed when they
leave the scope. Is that summary correct? If I create a owned ref and pass it
to a proc that takes an owned ref, does that mean that the context that created
the ref no longer owns it? And lastly, how would multi threading code change
with this new feature? Would the convention be to create owned refs and pass
them from thread to thread, or I am misunderstanding the principle here? I hope
these questions aren't too dumb, I don't really know much about memory
management strategies and I'm trying to understand the semantics of this
potential feature.