This adds support for MSVC and XCode, don't worry about the cmake stuff, just merged it into same branch to test, once you merge it in, it will go away.