JCLOUDS-457: Added TreeHasher util class and its test.

The TreeHasher class allows us to calculate the linear hash and the
treehash of the archives and multipart upload parts.
This ends up doing I/O in a constructor, which I guess is in general something to avoid, if possible? How much more complicated would it be to calculate this on first use? Also, would it make sense to make this a `Supplier<HashCode>`, or so?