How does one session 'target' another - does this become another vector in the rank/tag space? Can sessions communicate with other process-local sessions (aka loopback)?

I think a ref counted init/finalize is immediately useful and fairly straight forward. You're still limited by whatever threading level the first caller sets, but at least it's discoverable. I'd also remove the limitation that you can't init after finalize (though if init/finalize are ref counted, how do you know the last finalize was called?)