Considering that:
- the enums
IdCred and IdCredOwned are hard to share over the interface to other languages
- the struct
CredentialRPK can hold all the information that is stored in either IdCred or IdCredOwned
It may make sense to refactor out IdCred* in favor of having just CredentialRPK.