Moved DomDocumentCache instances back into external function class
* A global DomDocumentCache instance would require key prefixing
* switched internal data structure to std::unordered_map for average constant time access