Category.DOCUMENTATION is compatible with other category types
If one requests documentation, we want to be lenient. That is,
if a publication does not contain any documentation, we don't want
to fail. Instead, we now just return what we have (i.e. the main
artifact) which can also be used for documentation purpose in
the absence of other documentation. E.g. an IDE can de-compile
the bytecode if the source code is missing.
This change is also needed to make local matching work. Since
the documentation variants are secondary variants to a primary
LIBRARY variant, the matching would fail on the incompatible
primary variant before even considering the secondary variants
for selection.