PluginMemory: initialize PImpl
CacheEntry: use scoped_ptr and vector
MemoryFile: throw in case of error
FrameEntry: add const data() method