Reorganise pragma warnings for VS2012

And remove unignorable warnings
See
http://www.geoffchappell.com/studies/msvc/link/link/options/ignore.htm
Fix definition _WIN32_MINNT

Fix #1432