Add support for building with CMake.

* Support for building with CMake is added for GNU, Clang and MSVC compilers.
* Project files for Visual Studio and Code::Blocks are removed. Now they can
be generated with CMake.