Actually, hmmm. In the parse script:

# create a route as a combination of 'shape' and 'turn' information
# make sure we discard duplicate records.
waypoints = []
for i in range(-1, len(coords)):
if route.has_key(i):
if len(waypoints) and waypoints[-1].coord == coords:
del waypoints[-1]
waypoints.append(route)
else:
if waypoints[-1].coord != coords:
waypoints.append(Wpoint(coords))


I don't know Python. However, does "waypoints[-1]" mean the waypoint element before the current one?