Cancelled trips excluded from the results

In this pull request you can find some fixes to exclude cancelled trips from the possible results.

@abyrd, could you please take a special look at the fix I made in Timetable.java lines 180 & 190?  The cancel update messages are actually only added to the ordered TripTimes, meaning that the indexes never get updated with the KV messages. I believe that the indexes should be used only to find the starting "index" and then the lookup is performed in the ordered array of TripTimes. Not sure I didn't break anything else with this, though :)

The test I added tests both the indexed and non-indexed versions.