Related to #700
In the original bug report it was referencing only the sytem avatar images for setup users (like in the header); however the problem also persists with things like commit history.
This commit fixes the `tool.AvatarLink` function so that it also uses the already existing `avatar.HashEmail` function.
I also refactored the `tool.AvatarLink` method some to make the control flow more apparent and adhere better to DRY (there were multiple calls to the `EncodeMd5` function that the `HashEmail` function call replaced, now there is only one.)