Make checkstyle's options filename-agnostic.

Review Request #3975 — Created June 6, 2016 and submitted — Latest diff uploaded

3555, 3559
benjyw, patricklaw, stuhood, zundel
See issue:

We were getting excessive cache invalidation in our shared build
cache for checkstyle, because it was fingerprinting the absolute
paths to the configuration files. There's really no reason for
checkstyle to care about the names of the files containing rules
and suppressions, all it should care about are the file contents.
This change enforces that.

Added integration tests exercising the caching behavior (unit tests don't work because FakeOptions are not fingerprinted).

CI went green here:
CI went green here:
CI went green here: