[WIP] Locality Sensitive Hashing for approximate nearest neighbor search(GSoC)

> The implementation of this(LSH approximate neighbors) is completely
> different from the NearestNeighbors. So I think re-using is not
> possible

Hum, but they solve the same purpose. Isn't this a problem of finding
the right code organization to route operations in the various
implementations? I mean there is already brute-force, KD-tree and
ball-tree in the same object, and these are widely different
implementations.