Movementagent now explores the map until goal position is not visible.

If the goal position is not in the map, it explores the whole map and notifies that the position is not in the map, a new goal is then calculated and local map is then used to navigate to the desired goal.