message: index: Fix backwards search for bestblock
  This allows filters to be reconstructed when the best known block is
  the Genesis block without needing to reindex.
  It fixes Init errors seen in
diff: @@ -91,11 +91,12 @@ bool BaseIndex::Init()
  const CBlockIndex* block = active_chain.Tip();
  prune_violation = true;
  // check backwards from the tip if we have all block data until we reach the indexes bestblock
  - while (block_to_test && block->pprev && (block->pprev->nStatus & BLOCK_HAVE_DATA)) {
  + while (block_to_test && block && (block->nStatus & BLOCK_HAVE_DATA)) {
  if (block_to_test == block) {
  prune_violation = false;
  break;
  }
  + assert(block->pprev);
  block = block->pprev;
  }
  }
  