Simplify the coverage support

Do not make lcov a hard dependency for generating coverage.
There are several tools for generating a report, lcov is one.
But coveralls.io can be used, gcovr too, etc.
Add an automake conditional for lcov that way we can add
more makefile targets for lcov but let the gcov ones work