Removed assertion that forces routes to have only 2 directions. As some bus
lines can have multiple headsign/dirs posted in the same route (presumably
when they terminate at different stops on different runs).
Small updates to deal properly with 1-segment routes.
Changed the structure of Route_Defs struct and related functions to:-
 * Store route_short_name and route_long_name separately;
 * Now store a route ID as well as the names.

This was necessary to produce better GTFS output where we could have either a
short name, long name, or preferably both for routes.

Also, the ID is necessary since we find for buses, many of the routes have
duplicate short names.

(So probably next commit is to change the route segments structure to store a
route ID rather than route names list that the segment belongs to.)