Remove direct node->wallet calls in init.cpp
Summary:
Route calls during node initialization and shutdown that would happen between a node process and wallet processes through the serializable `Chain::Client` interface, rather than `WalletInitInterface` which is now simpler and only deals with early initialization and parameter interaction. This commit mostly does not change behavior. The only change is that the "Wallet disabled!" and "No wallet support compiled in!" messages are now logged earlier during startup.
Completes backport of core PR14437:
https://github.com/bitcoin/bitcoin/pull/14437/commits/ea961c3d7256c66146b4976ab1293db4a628c0de
Depends on D5078.
Completes T592.
Test Plan:
ninja check check-functional
Reviewers: #bitcoin_abc, jasonbcox
Reviewed By: #bitcoin_abc, jasonbcox
Subscribers: jasonbcox
Differential Revision: https://reviews.bitcoinabc.org/D5079