Backend C++: Build a Generic Data Cache with STL Templates