BUG: avoid NaNs throwing off class probabilities

In the case where neigh_dist includes at least one zero and self.weights is 'distance',
some values of `weights` may be infinite.
This is ok, except for when normalizing `proba_k`, when it creates NaN values.