Updated visibility graph calculations.

Added code to update existing visibility graph edges when a new obstacle
is added.
Obstacles need to be merged such that the visibility graph can be
constructed correctly for overlapping obstacles.