MSVC/ICL and general header fixes

This doesn’t make our headers totally sane, but it’s a little bit better.