Separating Class from Interface & Reformat

DAGMap.java has been separated into two files to make them easier to
navigate.

- The class is DirAcycGraph.java, and the interface remains DAGMap.java,
although some argument could be made that the names should be swapped
(as DirAcycGraph is a class implementation of a DAG).

- Some general cleaning up of the commenting.

ToDo: Next reformat might be to include the method name in all method
descriptions to increase first glance readability; that is if all
project members agree.