Remove dependency on MatchAccumulator in PathAwareDiagnosingMatcher.

Moved construction of the Description used for logging into a protected
factory method that can be overridden by subclasses. Subclasses can now
provide their own Description implementation, meaning that there is no need
for PathAwareDiagnosingMatcher to know how to replace displayable text with
loggable text.