Provide type-safe HashCode methods for Content-MD5

This works more naturally with Guava Hashing methods and immutability
provides better safety guarantees.  Also deprecate existing byte[]
methods.
Added a conditional for null.  I do believe we want to allow setting to null although this is beyond the scope of this commit.