Pass endpoint descriptor to TubConnector

We keep compatibility with old and new
connection hints while now supporting arbitrary
twisted endpoint descriptors. This of course
means NOT storing the location as a 3-tuple but
instead storing it as a string.
Fix various unit tests