Add an IntersectionTraversalCostModel interface for calculating the cost of traversing intersections.
Add an abstract implementation of IntersectionTraversalCostModel to hold some shared code.
Add a simple implementation of the cost model and a test of it.
Add some comments/todos.
Add TODO.
use the cost model to compute the turn cost in IntersectionVertex.