Navigator code initial version. May need bugfixing or further testing