serializable std::vector<std::vector<T>> replacement