add a navigation manager. closes #59