CMakePackageConfigHelpers: add more version compatibility modes

Add `SamePatchVersion`, `SameFullVersion`, and `SemanticVersion`
support.

Document `ExactVersion` as deprecated in favor of the clearer
`SamePatchVersion`/`SameFullVersion` names.

Closes: #18060
11 files changed