[Cashtab] Support ALP tokens
Summary:
Add support for ALP tokens (genesis, send, burn, mint)
Will handle listing and agora in a separate diff
Some other changes needed in this diff for things to work:
- Update validation functions as ALP has different max qty per output
- Improve handling of cached token info on Token screen (needed for integration test of how screen handles loading an ALP token)
- new 'alp' dir for function to return alp decimalized max qty; includes first jest ts file, so need jest types dep
- Moved token functions that work for SLP and ALP into a top-level index.ts in new token-protocols dir, including (for now) slpv1 and alp
Test Plan: npm test
Reviewers: #bitcoin_abc, emack, tobias_ruck
Reviewed By: #bitcoin_abc, emack, tobias_ruck
Subscribers: tobias_ruck
Differential Revision: https://reviews.bitcoinabc.org/D17192