[Chronik] Add basic structs and consts for SLP and ALP txs
Summary:
We use a shared representation for both SLP and ALP, which simplifies the implementation of the verification etc.
This adds support to represent 5 token types:
- SLP V1 (fungible tokens): https://github.com/badger-cash/slp-specifications/blob/master/slp-token-type-1.md
- SLP V2 (mint vault tokens): https://github.com/badger-cash/slp-specifications/blob/master/slp-token-type-2.md
- SLP NFT1 Group and Child: https://github.com/badger-cash/slp-specifications/blob/master/slp-nft-1.md
- ALP V0: https://ecashbuilders.notion.site/ALP-a862a4130877448387373b9e6a93dd97
Depends on D15007.
Test Plan: cargo test -p bitcoinsuite-slp
Reviewers: Fabien, #bitcoin_abc
Reviewed By: Fabien, #bitcoin_abc
Differential Revision: https://reviews.bitcoinabc.org/D15011