Final Draft of TSP

refactored code
addtional commenting