[avalanche] Add a remote proof container to retain the proof set of our peers
Summary:
Currently unused outside of tests, this adds a new data structure to store the proofs from our peers. This links the proofid with the peer's node id and save the state (present or absent) as well as the last update time so we can process the data and determine if we're missing a proof or if a proof is getting dropped by the network.
Depends on D14658.
Test Plan:
ninja check-avalanche-peermanager_tests
Reviewers: #bitcoin_abc, PiRK, bytesofman
Reviewed By: #bitcoin_abc, PiRK, bytesofman
Differential Revision: https://reviews.bitcoinabc.org/D14659