Limit the public dependencies of tor-client, a lot.

We'd like to make it so you can use tor-client without having to know about any/most of the other arti crates. Unfortunately, these other types are currently leaked in a way that makes the client have to know about a few other crates.

  • Ed25519Identity (via config)
  • RsaIdentity (via config)
  • NetParams (via config)
  • SubnetConfig (via config)
  • Runtime (via bootstrap and generic TorClient type.)

It might make sense to re-export the identity types, after careful audit. The NetParams type should probably be replaced with a HashMap from String to i32. SubnetConfig should be re-exported after API audit.

I don't know what to do with Runtime here, until async traits are stable and we can have a bootstrap function that returns impl TorClient.