Based on #8930, the only thing left to do after this to split main.cpp into main and net_processing is a single move-only commit.
After #8930, the only remaining changes are tweaks to pull header-processing-logic out of net code and into a function exposed through main.h.