moved all the graph stuff into Graph namespace