Final refactors, so navigation works and refetches data on moving to a new route