SConstruct : Fix MSVC compilation quirks
SConstruct : Fix MSVC compilation quirks

- A dependency related to USD uses `std::_snprintf()`. MSVC versions < 2015 did not have `snprintf`, but did have `_snprintf()`. MSVC's solution was to `#define` a macro to forward `snprintf` to `_snprintf`. That makes a call to `std::_snprintf` into a call to `std::__snprintf` (two underscores). Python in particular has it's own `#define` to try and sort it out, which doesn't work as of MSVC 2019. The solution arrived at, somehow, was to add an optional override to not override the override behavior.
- The equivalent of `-Wno-deprecated` on MSVC is the user-friendly `/wd4996`.

This definition suppresses the macro alias and MSVC is happy again.

johnhaddon/gaffer,johnhaddon/gaffer,andrewkaufman/gaffer,johnhaddon/gaffer,andrewkaufman/gaffer,GafferHQ/gaffer,GafferHQ/gaffer,GafferHQ/gaffer,johnhaddon/gaffer,GafferHQ/gaffer,GafferHQ/gaffer,andrewkaufman/gaffer,johnhaddon/gaffer,andrewkaufman/gaffer,andrewkaufman/gaffer