Makes scons vcxproj work on all systems

Fixes vcxproj generation for non-windows systems.

Changes along the way:
* Ensures the visual studio file is always described
* Makes the toolchain loop more straightforward
* Removes an old variable
* Prevents checking nonexistant enviro vars
* Prevents pkg-config protobuf env vars if not clang/gcc
* Removes tabs
* Doesn't use any pkg-config enviro vars unless clang/gcc
* Makes all directories windows-style
* Prevents beastobjc.mm from showing up in vcxproj
* Removes duplicate \src\protobuf\src
* Makes sorting deterministic across platforms
* Improves the deterministic sorting algorithm
* Prevents duplicate nologo tags
* Makes quotes consistent
* Prevents duplicate switches
* Removes some unnecessary code
* Removes excess type-checking