Add DFS algorithm.
Add DFS test.
Merge pull request #5 from agouge/feature/dfs

This adds a basic Depth First Search (DFS) algorithm which we will be able to extend later to implement other algorithms such as identifying connected components and computing Strahler numbers.

This fixes #2.