Use CMake 'usage requirements' to let tests find library.

Usage requirements are a relatively new feature of CMake.  They make projects cleaner by explicitly propagating just the necessary includes/defines/dependencies through to targets.
Enable testing and make it explicitly optional.
Create a CMake config file and export it.

CometConfig.cmake includes everything necessary for a client to consume Comet and exporting it, both from the build tree and the install process, allows `find_package(Comet CONFIG)` to locate it.
Make CMake aware of Comet's version.

Publish the version in CometConfigVersion.cmake.  In the process we removed the non-semantic version numbers, which breaks compatibility, hence the version bump to 3.
Merge branch 'feature/cmake'
Merge branch 'master' of github.com:alamaison/comet