Improved the build system.

CMake now checks for <Windows.h> and issues a warning if the header
isn't found. Previously it required that you supply include paths
manually, even if Windows.h can be found automatically.