[obexd] Flush PBAP cache more often

Since the PBAP cache is flushed only when a setpath operation is
performed, it may happen that a carkit moves to, say, /telecom/pb
using setpath, and then pulls incoming call history using absolute
path. This populates the cache with that data; if carkit then pulls
vcardlisting for something else, wrong cache data is used to generate
the listing.

Fix this by keeping track of what data was used to populate the cache,
and flush cache when request to some other data is made, in addition
to setpath flushing.