public MbtaRoutePrediction(string routeId, string routeName, string stopId, string stopName, ModeName mode, PredictedRoute predictions)
 {
     RouteId = routeId;
     RouteName = routeName;
     StopId = stopId;
     StopName = stopName;
     Mode = mode;
     Predictions = new ObservableCollection<MbtaPrediction> (GeneratePrediction (predictions).ToList ());
     NextPrediction = Predictions.First ();
 }
 IEnumerable<MbtaPrediction> GeneratePrediction(PredictedRoute tripDirection)
 {
     foreach (var direction in tripDirection.Directions) {
         foreach (var trip in direction.Trips) {
             yield return new MbtaPrediction {
                 ArrivesIn = new TimeSpan (0, 0, trip.ArrivesInSecs.Value),
                 Direction = direction.Name,
                 HeadSign = trip.HeadSign,
                 Trip = trip
             };
         }
     }
 }