Implementation Complete, but Ugly

Makes the code fully functional, but still contains some legacy code
from the testing process.  Committed here so it can be remembered and
observed, but safely removed from the final product.
Refactored and Gorgeous

Refactors the path calculations into a PathCalculator.  This should
really be an interface that could hide the BreadthFirst vs DepthFirst
methods, but for this assignment this solution is fine.
100% source coverage excluding the Road class.
TODO Polished

Updates the TODO file to include all of the tasks that I completed.