The CIF timetable parser from OpenTrainTimes