Implement standart canonical state instances
In order to be able to export and import ledger data to CIP-165 [1]. The plan is to have `scls` public library for each era that supports it, starting with Conway. The scls library is structured using namespaces that CIP-165 proposes and has instances for all types. In order to not reimplemnet too many CBOR encodings for the types that already have instance they were implemented via LedgerCBOR. In order to check conformance to SCLS spec CDDL conformance and canonicity conformance tests were introduced, so it's possible to develop ledger types and state without looking at scls package and rely on typechecker and tests. [1] https://github.com/cardano-foundation/CIPs/pull/1083