When a proof is added via the addavalanchenode RPC, we can avoid doing a copy.
Currently there are two public methods that can be used to register proofs into the PeerManager: addNode and getPeerId. They both register the proof via the private method fetchOrCreatePeer.
This makes all 3 methods take the proof by value rather than by constant ref. It updates all calls to addNode to pass the proof as an rvalue, to avoid an unecessary copy. getPeerId is currently only used register the node's own proof, and this is the only case where we want to do a copy, as the proof is also stored in the peerData struct of the processor (in the future we might want to just store the proofid and get the Proof from the PeerManager when needed).