- Cmake - Added require_pthreads, which checks that pthreads are available and adds the include path for MSVC builds.
- Cmake - Modified executable suffix  to also include original platform suffix (so that windows still gets .exe)
- Cmake - removed gcc-specific linker warnings for MSVC builds
- Cmake - updated all projects using pthreads to require_pthreads. I think we may need to just set this in the default configuration, since voglcore requires pthreads.
- Cmake - set up default compilation options for MSVC builds: multithreaded compilation, correct runtime usage, always generate PDBs.
- voglcore - Fixed vogl::math::count_leading_zero_bits for MSVC.
- voglcore - Updated console code to use fputs to match linux behavior (using puts was causing all lines to be double spaced)
- voglcore - Added plat_chdir to change the current working directory
- voglcore - Added a NULL exception callback chain for windows (basically implemented vogl_set_exception_callback to just return it's parameter)
- voglcore - Added 'dbghelp.lib' as a required lib on windows for function demangling.
- voglcore - Added plat_fexist, a function to check for the existence only of a file
- voglcore - Fixed behavior in plat_virtual_free on windows to pass flags that windows expects. The fact that there are exactly two flags that are mutually exclusive is dumb.
- voglgen - On windows, just directly include source files for TinyXML.