Quite a refactor: changed findOrCreateEdge argument order and the access
privileges of DAGObjects. Also implemented a SubDAGExtractor module
which uses transitive information to function.