src/libpcp_pmda/src/cache.c: refine the fortification ...
src/libpcp_pmda/src/cache.c: refine the fortification ...

Mark's previous change fixed one problem, but is NQR.

In addition to instance domain management, these cache routines can be
used to manage a hash-addressed cache of strings (PMDA_CACHE_STRINGS)
and in this context an empty string is valid, although the NULL name
is wrong always.

The previous fix was causing QA fallout from the proc PMDA with
messages like:
Error: insert_cache: NULL or zero length instance name for inst -1

At the same time I cleaned up the error message to report the instance
domain and made the use of pmInDomStr_r() consistent (preferred over
pmInDomStr()) throughout this file.

adfernandes/pcp,adfernandes/pcp,adfernandes/pcp,adfernandes/pcp,adfernandes/pcp,adfernandes/pcp,adfernandes/pcp,adfernandes/pcp