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

This would be more readable as:

```
>>> indices, distances = lshf.kneighbors(X[:5], n_neighbors=3, return_distance=True)
>>> indicies
array([[0, 1, 2],
 [1, 0, 2],
 [2, 1, 3],
 [3, 2, 4],
 [4, 3, 5]])
>>> distances
...
	


```