Quite simply, is there any way we could have access to the cache, including what to delete and what to add to it? Only what is manually added to the cache by the user would be included, and otherwise it would be pulled, used, and never added. It seems that the icon operations themselves are quite fast, and one of the main issues with using them is that auto-caching reduces performance when dealing with a large number of icon calls in a short period of time. By allowing the end user to handle this, the utility of on-the-fly icon operations will be greatly improved.
To handle backwards compatibility, there are two obvious solutions, though I'm sure there are a few others I'm not thinking of: First, is (if this is handled by something like a /cache datum) is that only will the user-handled cache system be used if it is created (i.e., new /cache), and upon deletion it would revert to default. A second suggestion is that the /cache class be existent by default, and it's default operation is the same exact operation as the cache currently has.