I was looking at some of the DistanceMeasure stuff (Mahalanobis at the moment) and it strikes me as a bit odd that our core distance() functions would use Preconditions to check things that are part of construction/configuration of the instance. A call to distance() is likely executed a lot of times. Is it really going to change? Any objections to me removing them?
As an aside, should we have SquaredMahalanobis too, much like we have SquaredEuclidean? Seems like, since we just need relativeness we don't actually care about the sqrt, right?
