Add graph_node_get_dependencies method
Reorganize methods in graph.h
Add common error handling function
Use fatal_error instead of custom functions
Do not deconstruct the graph during the build
Implement $< automatic variable