matchtree: capture Stats before pruning (#607)
We now call updateStats upto twice per shard search. The intention of
this is to capture statistics before pruning the matchtree. Previously
we would of done work in creating a matchtree but would then prune those
items away and would then never capture those statistics.
In practice that work was reading just one or two varint (the size of a
posting list) so likely had minimal impact on the reported statistics.
However, in the next commit we want to introduce a statistic which is
recorded even if we generate a noMatchTree.
The main technical part of this commit is ensuring all existing
updateStats functions can be called twice without overcounting.
Test Plan: go test