Changed the dependency code so that it respects multiple levels of dependencies.

This is a temp solution, the better solution would be to recurse down when do the compare on Collections.sort.
Added a custom flags module, which allows custom world guard flags.