Core: Add thresholding of lower 1% of Interest Points
Core: Expand threshold to 0.1%
Core: Prevent clustering from finding null sets.

If there is just one outlier before, it would calculate a zero
variance. This is true, however on the next step that prevents
distances from being calculated. Now we prevent the variance from
going below double's epsilon.
core: Have altitude clustering happen after triangulation clustering.

Altitude's inlier cluster is assumed to be the largest cluster.
Core: Fix typo in figuring out which cluster is bigger
Core: IntegralAutoGainDetector reuse code from vw::IIPD

IIP == IntegralInterestPointDetector