update
faster by half-plane testing and mutating half-plane lists
4x speedup by space skipping via distance bounds