Added the external platform_specifics.hpp file and used it to cleanup MSVC++ specifics/nonstandard extensions.