Edges and VerticesStep are now abstract as its the role of the grpah implementation to define those steps.