[Chronik] Refactor: Add QueryBlocks, instead of using BlockReader directly
Summary: Encapsulates what we need to query blocks. This allows us to more easily add more data required for serving blocks, e.g. the current avalanche height.
Test Plan: ninja check-functional
Reviewers: Fabien, #bitcoin_abc
Reviewed By: Fabien, #bitcoin_abc
Differential Revision: https://reviews.bitcoinabc.org/D13628