Split node_supports_ed25519_link_authentication into two or three separate functions
As of our #15056 (moved) code to implement the circuit-side part of prop220, we have a function,
node_supports_ed25519_link_authentication, which isn't quite right.
Sometimes, when we use it, we mean, "If we try to connect to this node, should we expect that we will authenticate its ed25519 identity?"
Sometimes, we mean "If we try to make a connection through some random node to this node, authenticating with its ed25519 identity, will that work?"
And sometimes we mean "I'm thinking of asking that node to extend a circuit to this node. Should I tell it about this node's Ed25519 identity, or would it take it the wrong way?"
I wrote a patch here in response to dgoulet's review of my #15056 (moved) branch, but on reflection, it isn't right. I'll attach it, but it's a bad start, and it's too complex, and maybe you should ignore it?