repository: make tests pass again
The tests use mono-threaded pyro, which breaks assumptions made in
e27337dfec8c. To fix that, remove sessions from the _pyro_sessions dict
when they're closed, and force the test pyro client to actually
disconnect when it's done.
repository: monkey patch pyro connection handling to detect clients going away
When a pyro client goes away we need to close their session (to release their
cnxset). Add a dict to the repository mapping pyro client threads to session
object.
Closes #2932058