Externalize the graph code into a separate project.
Update graph and path libraries
Finish graph_external