KNN: First commit, needs work

Currently it's specialized purely to the LSHTC challenge on Kaggle