Added undirected graph

Undirected graph with basic features.
Removed unnecessary imports
Basic tests for graph functions
Basic algorithms on graphs.
Added DFS

Simple depth-first search algorithm.
Added tests for DFS

Two simple tests for depth-first search
Added BFS, BFS simple tests
Removed debug print
Added connected components, tests for them
Added is_connected.

Check if graph is connected (has 1 connected component)
Changed container for visited nodes in DFS to set

Should be much more effective
Added unweighted_shortest_path and tests.
Added Ford-Bellman algorithm for shortest paths.

Compute shortest paths from start node to each other node, accessible
from the start
Added Floyd algorithm for pairs of shortest paths