repair broken consensus change distribution
By combining consensus changes before distributing them when downloading multiple blocks at a time, we ended up providing subscribers with consensus change IDs that did not match the original consensus change ID. The result was a lot of the modules started resetting themselves.
This fixes that, I should have thought about it on the first pass, and I remember being skeptical that it was the right way to go.
Code has been simplified, and now it should be correct.
We need to replace RC3 with this code ASAP, it's a pretty massive usability fix.