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

So this issue can be fixed by having `rng` in the `fit` method where `create_tree` is called and passing a seed generated from that to `create_tree`, so that it uses that seed in `GaussianRandomProjection`, right?