Add cmake support to have be able to build on windows with MSVC.

Builds and passes all tests