In some cases the initially created wallet is left running and taking a
peer (in order to check if anything ever got deposited at the QR-code
shown address).
This now sunsets those wallets after 2100 blocks (over 2 weeks).
Rename a pure-bitcoin-cash based method naming to no longer
have the word 'price' in it since that is associated with conversion
to another money or currency.
For mined transactions we now use the historical fiat price of BCH
instead of the current.
This will give us a much more stable and historically accurate view of
our transactions.
Fixes: #7
Take into account that miners play with block dates, so a block may come
in with a timestamp slightly in the future.
In that case we still want to show 'now' instead of the ISO date.
FloweePay is an appliction singleton and as such a global that is
deleted outside of main().
The FloweePay app owns most of the data, including (implicitly) the
private keys. Private keys are managed with a LockedPoolManager in
order to enable page-locking and avoid them being swapped out.
LockedPoolManager is also a singleton, and so we make sure that it
is created _before_ FloweePay and as a result deleted after FP
releases the memory managed by the LPM.
Singleton interactions are always a bit messy.
We introduced for secret keys the signature-type field, which is required
to avoid signing with one key as both Schnorr and ecdsa as
that can cause leakage making recovering the private key much easier.
So, we now store this data but old wallets didn't fetch that from
the incoming transactions. So this conversion fetches the data from the
transactions (which are on the device) and stores the sigtype with the
keys.
This adds the feature that we show a "last receive" field on a wallet,
and we also change the date format to have "yesterday" style dates
for recent ones.
This changes the default generated wallet to be a HD wallet.
We also add a helper class to configure newly created wallets from QML.
This finishes up the new wallet panel to have all the visible features
actually do something.