Initialising `m_cache` with 0 breaks (silently) when Value = LuaTable, and will probably break in other ways for other Value types.