Use embedded CBOR encoding in the central codec definitions
Currently the use of the CBOR encoding is spread out where these codecs are used, and this leads to confusion and accidental incompatability, plus an inablity to point to a concrete CDDL spec for the protocols.
This puts the embedded CBOR-in-CBOR format within the centrally defined codecs. This formulation should still make it possible to use annotations with the full bytes, by fmaping over the decoder result.
Using this efficiently in some places may require using encodePreEncoded from cborg-0.2.2. This allows one to use a bytestring containing CBOR format data directly in an Encoding. This would be used to provide the encoding side of things but still use the annotations with the raw bytes, rather than re-encoding.
The tests will need updating to follow the type changes.