CTest: Improve Python coverage.py source file search algorithm

If the coverage.py source file is not found in the source directory, the
build directory is first searched before raising an error.

This is necessary because it is a valid workflow to build a Python
package from source, then install this package to a virtualenv that
lives in the build directory.  Tests will run against this deployed
package and therefore the covered source files will be found in a
subdirectory of the build directory, and not anywhere in the source
directory.
CTest: Fix Python coverage.py off-by-one error in results

The cobertura format uses line numbers indexed starting at 1, and CTest
uses a vector indexed starting at 0 to store them.
Merge topic 'fix-coverage-py' into next

deee7c42 CTest: Fix Python coverage.py off-by-one error in results
88b3dcb1 CTest: Improve Python coverage.py source file search algorithm
Add an "installed file" property scope

Teach set_property and get_property an "INSTALL" property type to be
associated with install-tree file paths.  Make the properties available
to CPack for use during packaging.  Add a "prop_inst" Sphinx domain
object type for documentation of such properties.
CPackWiX: Implement CPACK_NEVER_OVERWRITE and CPACK_PERMANENT properties
Merge topic 'cpack-properties' into next

d0b1d2a6 CPackWiX: Implement CPACK_NEVER_OVERWRITE and CPACK_PERMANENT properties
15a8af21 Add an "installed file" property scope