more experimental navigation build out
new classes to support navigation and map functions