node/chainstate: Decouple from concept of uiInterface
Summary:
...instead allow the caller to optionally pass in callbacks which are triggered for certain events. Behaviour change: The string "Verifying blocks..." was previously printed for each chainstate in chainman which did not have an effectively empty coinsview, now it will be printed once unconditionally before we call VerifyLoadedChain.
Partial backport of core#23280:
https://github.com/bitcoin/bitcoin/pull/23280/commits/b345979a2b03b671c0984edd7e48e0baec2e2f34
Depends on D12570.
Test Plan:
ninja all check-all
Reviewers: #bitcoin_abc, PiRK
Reviewed By: #bitcoin_abc, PiRK
Differential Revision: https://reviews.bitcoinabc.org/D12571