closest :: Vector v Double => Distance v -> v Double -> Tree v a -> Maybe ((v Double, a), Double)
closest _ _ Empty              = Nothing
closest :: Vector v Double => Distance v -> v Double -> Tree v a -> Maybe ((v Double, a), Double)
closest _ _ Empty              = Nothing
closest _ _ Empty              = Nothing