On rend failure, Single Onions should build a 3-hop path

This enables two features:

  • Single Onion compatibility with Rend Points avoiding being one-hop proxies (legacy/trac#17945 (moved))
    • In this case, failure is defined as the inability to connect to a rend point with REASON_TORPROTOCOL (or whatever legacy/trac#17945 (moved) does)
  • Single Onion compatibility with ReachableAddresses, in particular:
    • IPv6-only Single Onions talking to non-IPv6 intro points
    • In this case, failure is defined as the inability to discover a reachable rend point