Call protocol_list_supports_protocol less often to save time and allocation
This function appeared on the heap profile of legacy/trac#23777 (moved), and there's no reason it should have done so. It appears to have been getting called by circuit_extend(), which suggests that we have some dodgy logic somewhere. I blame node_supports_ed25519_link_allocation.