Fixed the MD5 hashing function so it works on massive files now, unsure as to whether it will be faster or slower though