added header files to dependencies
moved graph structs out of global namespace