refactor itinerary loading to use live data