Add make cov target: generates code coverage report

Adds the target "make cov" which generates an html report of unit-test coverage. 
The CMake option -DRANGE_V3_ANALYZE_COVERAGE=On enables the target in Debug builds. 
This uses clang --coverage and lcov under the hood to generate the report.

Note that the reported coverage percentages are with respect to the generated code (e.g. template classes and functions that have not been instantiated are neglected!). To get more accurate results one should explicitly instantiate everything on the tests (which is helpful to check that everything compiles anyways).
I've added the check and also the flags for gcc. The gcc flags should just work but since I haven't been able to test it I'm just letting cmake fail in that case.