splitted NodeFactory into VertexNodeFactory and EdgeNodeFactory