Fix bswap macros for Microsoft Visual Studio C 2005 or newer compilers. 2nd try.

If it is acceptable please merge.