Cache filling methods follow standard and return a Result<bool,Error>
The methods to place the data in the cache from the hash source are wrapped in a match statement.
Compression using flate2 has been added to the caching controller
Made the hash code call for cached matricies before calculating them again if
possible
Changed the FFI tests to be a bit more dynamic. That said, I just noticed that
python hates unsigned 64bit numbers. Need to find a way around this. I
should be able to compare the native Rust code against the python FFI and
get the same results for a specific file.