Update with Master
Functional kNN
Reworking structure, functional kNN
Pruning, but not ordering