This diff simplifies fetchOrCreatePeer to turn it into createPeer().
The fetch part is never used, so we can avoid a lookup. Proof validation is moved to the proof registration level, because this is a proof operation and not peer related. Removing from the orphan pool is also no longer needed as we previously checked the proof is not an orphan.
This is a first step toward decoupling proof registration from peer registration. The goal is to have an avalanche utxo map to which we can bind proofs, and use that as the source data to determine if a peer needs to be created.
Utxo attachement will be moved in a follow up.
Ref T1854.
Depends on D10440.