[Chronik] Add ChronikBridge to access the node from Rust
Summary:
Chronik needs to be able to read data from the node. We add ChronikBridge (which stores a reference to NodeContext), which currently exposes get_chain_tip to get the tip of the chain.
Since for Rust this is an opaque C++ type, we need to pass it around as std::unique_ptr, using make_bridge. Eventually, this will be part of the Chronik struct so we can access the node when we need.
Test Plan:
- ninja test_bitcoin
- ./src/test/test_bitcoin -t chronikbridge_tests
Reviewers: Fabien, #bitcoin_abc
Reviewed By: Fabien, #bitcoin_abc
Differential Revision: https://reviews.bitcoinabc.org/D12059