Using functional interfaces in Java 1.8 and reducing code.
Merge remote-tracking branch 'origin/master'

Conflicts:
	graph/src/main/java/inc/overlord/graph/dag/BreadthFirstTraversal.java
	graph/src/main/java/inc/overlord/graph/dag/InvertGraph.java