Make sure Tor can shut down via control port, and start again in same process
In order to stop tor and restart it cleanly, we would need a tor control port command to tell it to stop and cleanup all it's state so we can call the tor main again.
This involves ensuring that all static variables are properly reset and cleanup is done correctly.
Having good integration tests can go a long ways in ensuring that nothing breaks here.