CMake changes for win32 support, still need to fix also need to revamp linux build