Missing values (range1: 0.3-0.4, range2: 0.5-0.6, point: 0.45 now 
returns result, previously returning null)
Still inefficient, but I don't care.
Eucledian and Manhattan distance implemented for comparison