Add Adler32 provider and hasher

The Adler32Hasher class implements the Guava native Hasher
interface. Any methods not implemented in java.zip.Adler32
were also not implemented in Adler32Hasher. At the moment an
UOE is thrown, but in the future this can be easily changed.
Add Adler32 to ChecksumType and factory
Implement auto-generated methods
Add comments, licenses and test class
Finalise the Adler32 object