graph: implement graph operations