DFS search tree

Implemented depth-first search of the tree to retrieve a node with the
given payload. Also returns the edge weights along the path from the
root node to the target node.