Do not try to read the files if their size is zero.
Do not warn about size measure differences during IBD, reindex and loading of blocks.

In those cases the differences are somewhat expected.
Parameterize the acceptable ratio of size divergence, and adjust it for IBD, reindex and loading.
Always log ratio and other parameters to Monitor its behavior.
Add a lock before writing to blocktree.
Fix IsInitialBlockDownload which was broken by headers first.