Refactor the tor-rtcompat API.
This branch provides a more uniform API for constructing and running Runtime instances that use Tokio or AsyncStd and NativeTls or Rustls.
It also makes the NativeTls runtime optional, and gets rid of a whole bunch of duplicated and/or boilerplate code.
I recommend reviewing one commit at a time.
Closes #300 (closed).
Closes #301 (closed).