Major refactoring

- Repackaged KMeans into a class, with an auxiliary class for storing
cluster centers
- Removed standalone functions for regress, regresswithpca, tuning, and
classify for simplicity, standalone apps now just call the underlying
classes and methods. In many cases these standalone functions were only
one or two lines, so this removes redundancy while still enabling
simple calls from either the PySpark shell or as standalone apps.
- Renamed sigprocessing -> time series, removed standalone functions,
standalone apps now just call the underlying classes and methods (as
for regression and classification).
Fixed import errors in tests
Merge branch 'refactoring'