Add ChecksumProvider class substituting Utils (rebased onto develop)



This is the same as gh-788 but rebased onto develop.

----

This PR is a set of refactoring commits that remove the responsibility of calculating message digests/hashes from Utils.java (a static class). A new ChecksumProvider with MD5 and SHA1 implementations has been introduced.

To test, make sure no imports fail and that uploading a profile picture doesn't fail either. As the Utils class has been used throughout the codebase, it's hard to pinpoint a single place which this change affects.

/cc @joshmoore, @mtbc, @jburel