Extend 'sq key adopt' to allow adopting bare keys
Part of the problem raised in https://gitlab.com/openpgp-card/openpgp-card/-/issues/2 is how to further process public key material that was exported from OpenPGP cards (as a `Key<key::PublicParts, key::UnspecifiedRole>`).
Such subkeys could be associated with a software key, and this might be a common use case. `sq key adopt` is a mechanism that solves a similar use case.
The first problem with this is that `sq key adopt` doesn't allow importing such bare keys, because they have no binding signature.
However, I think there is no strong reason why `sq key adopt` shouldn't allow importing them.
A bare public key seems no more problematic than a subkey that is bound to some random primary key.
However, for use as a (sub)key, the public key material from cards is also lacking metadata (e.g. expiration).
So the main practical difficulty for importing bare public keys via `sq key adopt` is that we'd need to specify the missing metadata that should be stored in the binding (or direct key) signature. This data could be passed as additional parameters to the `sq key adopt` call (that would get unwieldy if multiple keys are getting adopted at once and each one can have multiple pieces of associated metadata).
issue