Improvements to the global planner and move base

Improved the Gradient extraction logic 
Added loop check to the GridPath extractor
Added GridPath extractor as a backup extractor (when the gradient extractor is used - which sometimes is unable to extract a path using the value function)
Added plannerThread over clocking - so that when a new goal comes in - the planner responds immediately
Added option to the move_base so that when the over clocking is enabled - only if the option is set will the planner get called immediately when the controller fails - if you expect dynamic obstacles to be in the environment - best option is not to set this flag 

Since this has been already rev'ed (https://github.com/ros-planning/navigation/pull/234/files) I wasn't super careful here.