Refactor ClientCirc APIs to use Arc<ClientCirc>.
Now ClientCirc is no longer Clone
, and the things that need it
to be Clone
instead return and use an Arc
We're doing this so that ClientCirc can participate in the RPC
system, and so that its semantics are more obvious.
Closes #846 (closed).
Thanks to the type system, this was a much simpler refactoring than I had feared it would be.