Cache (ACM) plugins currently define a class named 'acm' which is then extended by the 'cache' class that makes use of the cache functionality.
This is bad design and leads to problems with extensibility (you cannot extend a plugin). It also leads to problems with facebook's HPHP (aka hiphop) because there are multiple classes with the same name.
Cache plugins should implement a common interface, have their own class name (ideally autoloaded). The 'cache' class should take an instance of the cache plugin and can provide a __call() delegate/proxy fallback for backward-compatibility.