Never send a consensus which the downloader already has
FWICT, we have a regression in our new consensus code: we no longer check the if-modified-since date when serving consensuses, since that field isn't set in the consensus_cache_entry_t case of .
Additionally, if somebody says X-Or-Diff-From the consensus which we currently have, then instead of telling them "That's up-to-date", we also send the current consensus. That's also bad.
These problems make the most trouble in test networks, where the consensus update rate is so fast that relays frequently try to download a consensus before it's there.
Diagnosed with help from ahf.