[avalanche] Add node related functions to the peermanager
Summary:
This adds a way to register nodes to the PeerManager and select one available for query.
The logic is similar to what is found in AvalancheProcessor and is meant to eventually replace it.
Depends on D6818
Test Plan:
ninja all check-avalanche
Due to the inherent randomness of the process, fully unittesting this is not possible and once more things are pieced together, inetgration tests will have to cover it.
Reviewers: #bitcoin_abc, Fabien
Reviewed By: #bitcoin_abc, Fabien
Differential Revision: https://reviews.bitcoinabc.org/D6822