Added depth first and breadth first search