Ultimatey, we want Peer to provide some kind of Proof that they are not sybils. We will need to prvide such proof to the PeerManager and have the PeerManager, well, manage the peers.
This means we will go through a gradual deprecation of the Peer based API as it is superseded by a Proof based one.
Each proof must have some kind of unique identifier, a ProofId, which will be used by the PeerManager to identify it, and, by extension, the Peer attached to it.