Task one: Read the connections file (road data) and the intersections file (location data) and build the whole graph. Both files are reached through /home/www/class/een318, one is called intersections.txt and the other is called connections.txt. The graph should have a node for each intersection, and each intersection shoud have a list (vector or whatever) of pointers to road (or connection) objects. Each connection object should contain the name and length of the road segment that it represents, plus pointers to the two intersection objects that it connects. One way to view this is as a graph in which the intersection and connection objects are both nodes, and the pointers are the arcs or edges. A better view is that the intersection objects are the nodes and the connection objects are the arcs or edges that join them. The pointers are just an implementation detail. Task two: When the graph is built, the program should be interactive. First the user enters the name and state of a named place, and the program selects that place's closest intersection. Then in a loop, show the user a list of all the roads that lead out. For each road, its name, length, rough direction, and some information on where it leads must be shown. The user will select one (by its numeric position in the list), and traverse it. Repeat until the user has had enough. Every time an intersection is reached, display its details and make the move. This way you can manually explore the map and make sure everything is connected properly. Usual rules: clean tidy programming and make sure it works, and demonstrate that it works.