Add cache to SimilarityCuts
Created by: Zaharid
The similarity cuts slow down the code considerably: They use a code path for loading data that should become standard but now doesn't use caches and is not used anywhere else in the "main" paths. Moreover it is a good candidate for having a cache regardless since it needs to be loaded at least twice (and in practice a few more times on a typical run).