Accurate Bresenham raytracing implementation and clearing for corner cases

Changes / fixes clearing with Bresenham raytracing using a more accurate version
Adds parameters for accuracy settings
Adds parameter for including corner cases into clearing

See also https://github.com/ros-planning/navigation/issues/267

Implementation based on: http://graphics.idav.ucdavis.edu/education/GraphicsNotes/CAGDNotes/Bresenhams-Algorithm.pdf
Nope, but it still used integers in the actual ray tracing which is the most work.