Went down wonky path for hashing/saving
Moved to better data structure for storing hash and data
All files failing due to some strange ordering issue
Adding in hash checking as per Charles' request
DRYed up cache save mechanism