Base for Logistic Regression + KNN Updates

Added new param to KNN model called "metric", user can now specify "euclidian", "manhattan", "hamming", or "lazyManhattan". This value changes the way the distance between two features are calculated during predictions.