abstract out navigation methods into module