Add Tor client endpoint and parser plugin

This Tor client endpoint object encapsulates port retry logic; attempts to establish a SOCKS5 connection with the system tor process by iterating over a list of ports that tor might be listening to.

OK... I'll add unit tests and move the parser to a separate module.
Commits coming soon!