Add CMake build system.
Adds CMake build system. I realize it's a little presumptuous to assume that you'd be interested in supporting a third build system, however I believe CMake, and this implementation, is really solid. It was also an excellent learning experience for me.
Tested on macOS 10.14, Ubuntu 18.04, and Windows 10 (with Visual Studio 2017).
CMake builds work on each of the above.
make check passes on macOS, Ubuntu, and Windows, provided that Python3 is available.
Ubuntu required installing CMake from source, as I used some features which require CMake 3.12+ and it seems Ubuntu 18 is still on CMake 3.10. For reference, 3.14.5 is the latest, and 3.15 release candidate is available.