It moves all peer IDs to did:key DIDs but does so with the simplest internal changes. Now peer IDs appear as did:key DIDs properly when presenting them to other peers and the internal implementation can be tightened up as needed. This includes improving validation for incoming peer IDs and potentially using a did key resolver library (or, if this is unnecessary, at least adding tests to confirm the current code behaves the same way as a did:key resolver).
This PR builds on top of PR #266.
It moves all peer IDs to did:key DIDs but does so with the simplest internal changes. Now peer IDs appear as did:key DIDs properly when presenting them to other peers and the internal implementation can be tightened up as needed. This includes improving validation for incoming peer IDs and potentially using a did key resolver library (or, if this is unnecessary, at least adding tests to confirm the current code behaves the same way as a did:key resolver).