Fixup transitive includes
Rebase
Try to fix CI
Fix win32 build
Rebase and remove temporary CI hack
LGTM.
Rebase and poke CI.
Fix missing include and C++03 issue.
CI passed but updating the Phabricator status timed out. Shipping.