Comprehensive BinarySearchTree and DirectedAcyclicGraph classes including implementations of Lowest Common Ancestor algorithms for both.