Free downloadHeader after more than 1 use
Make mapHumanReadableName into a property
Making mapMd5 into a property
pathToMap can be a function, no need to use self1 in this case
Check divide by zero
md5HashFromFilePath also doesn't have to be a method