preparing to generalize NavController