Adds the ability to apply dimensionality reduction techniques directly to SF values. It includes an abstract interface to sklearn's dimensionality reduction library, and direct wrappers for PCA and tsne.