Remove "optimization" from ConnectedNodes

because the backing TreeSet does not correctly store the Segments, leading to bugs.
The time complexity of intersectsGraph is no longer O(log n + k), but O(n).
addSegment / removeSegment is now O(1) instead of O(log n)