nodes hold a list of edges
now edge moves with node