gc_engine fsm navigation working
finished switch to fsm