Only send Compliance event when compliance changes

**NOTE:** I checked the dependency on apache commons codec and it appears we are Ok here. Looks like candlepin on RHEL6 is including apache-commons-codec-eap6-1.4.0-3 which does contain DigestUtils.

Create an SHA256 hash of the key parts of compliance
and the consumer when compliance is calculated
and check it against the current hash value that
is stored on the consumer before sending compliance
events.

There is a possibility of collisions with this
approach, but this isn't a big concern. An event could
be missed, but candlepin updates compliance status often
and will be updated quickly.