Add support for public transit

Add GTFSReader which generates time-expanded graph from gtfs files. New
encoder and filter which are needed for traversing the graph. Support
for basic routing.
Improve Index and add more tests.

Implement LocationTime2IdIndex with Ntree. Add new flags for exit and
entry edges. Split test in GTFS and index test. Add a DebugUI with
public transit support.
Add high level interface
Add transfers support to GTFSReader
Minor fixes
merge fixes