Huge amount of work

Completely forgot to commit earlier! Rearranged a lot of namespaces,
worked on commenting a few files and reworked the Graph and Node files
to be more generic.