Important changes:
- Converted the easy to mix strings to named types as phantom types
- Renamed `AccountDto`s to `MultiAccount` to better match the status-go
domain knowledge.
- Renamed MultiAccount to ChatOrWalletAccount to better match its multi
purpose and don't confuse with the MultiAccount domain knowledge.
- Remove libs/CMakeLists.txt
Note: Tried to use the fluent::NamedType but it doesn't work with
nlohmann_json, gave up finding why. Therefore I extracted only
the needed functionality for the simple types we use.
Updates: #6321
Considerations
- MultiAccountStoreAccount is required for generating a new account.
MultiAccountStoreDerivedAccounts won't be enough even that it works
for creating initial account and login code
- Validate the understanding that `rootAccount.address` is `walletAccount.derivedFrom`
Updates: 6321