Implement circuit binding and start on intro-point establisher logic
This branch rebases earlier work from !1465 (closed) to incorporate necessary preliminaries, and @Diziet's comments. It's about as far as I think I will be able to advance this before I go on break. (Conceivably I'll add an extra commit I guess.)
Although the tor-hsservice part is not complete, I think that should not block a merge if you think the rest of this is ready: it moves things forward and refines our APIs a little.
Closes #993 (closed).
Starts on #976 (closed).