DFS + BFS done. Refactoring would be nice
merged knuts impl into master + refactoring