This adds an extra obstacle layer in the local costmap that can be used for backtracking

This adds an extra obstacle layer in the local costmap called the head_obstacle_layer. This is done to minimize interference with the rest of the nav stack but comes with one big drawback: The head_obstacle_layer cannot clear the obstacle_layer and vice versa. I have not encountered a problem with this during my experiments since the robot can typically go forward after backing down. Also, at G4S there shouldn't be many dynamic obstacles if I'm not wrong. Otherwise, adding it to the normal costmap could have caused performance issues which I am not so keen on introducing at this point=/.

@BFALacerda Should this go in a G4S deployment branch instead?