Add node_map check feature

Why do you use a derived class from std::vector?
I think plain std::map is appropriate for this purpose.