Created an adjacency list version of a graph.

Along with implementations for BFS, DFS, topological ordering and Dijkstra's algorithm.