Take different approach to MSVC warning suppr.

Instead of defining several new macros to suppress C4127 at specific
points, suppress it globally. And suppress the C4702 around
__assume(0) instead of removing that line.
Clarify <inttypes.h> workaround

Keep the workaround-definitions in the global name-space, but make
clear that this happens only on old compilers.