cmTarget: Fix reporting interface-set properties which are FALSE.
cmTarget: Fix debug report for interface-set compatibility types.

If the dependent target sets the property to boolean false, ensure
that that appears in the debug report.  Previously, the report
output contained whether the property was consistent among dependencies,
displaying 'TRUE', instead of the content of the property, which may
be 'FALSE'.

Return a std::pair from the consistentProperty method.  This makes
it possible to make the return value for string types easier to
reason about.  The return value of consistentProperty was previously
set to an empty static string to emulate a 'true' value for the caller
in commit 816b4a8a (cmTarget: Make consistentProperty
return consistent content., 2013-10-22).  The pair makes the
consistency result properly typed.
cmTarget: Don't repeat property origin debug information.
cmTarget: Test impliedByUse number-compatible properties.

Test that it is an error to read a number-compatible property to
determine the link implementation.  An alternative would be to
consider the value to be "0", however, that is too arbitrary
given the use-cases of this feature.  Values from this feature may
be used in setting a define, where "0" may have special or invalid
meaning and should be explicit.
cmTarget: Remove support for <CONFIG>_LOCATION property.

It is not documented, is very old, is compatibility code,
is non-uniform and is not needed.
Add cmHasLiteralSuffix API.
Merge topic 'minor-cleanups' into next

47b9928 Add cmHasLiteralSuffix API.
4417316 cmTarget: Remove support for <CONFIG>_LOCATION property.
a73601a cmTarget: Test impliedByUse number-compatible properties.
44d1b40 cmTarget: Don't repeat property origin debug information.
8148890 cmTarget: Fix debug report for interface-set compatibility types.
5fd22fa cmTarget: Fix reporting interface-set properties which are FALSE.