Moved scala functions to subfolder
Updated readme

- Added quick start guide
- Clarify python vs. scala
Changed kmeans clustering

- Dropped calculation of distances
- Made max iterations and tolerance optional arguments
Major changes to factorization package

- Unified SVD into one function with option for method ("direct" or
"em")
- Made max iterations and tolerance opt arguments to ICA
- Added optional random seed argument to ICA to faciliate testing
Major changes to regression package

- Dropped shotgun because of poor scaling
- Dropped shuffling because of poor scaling
- Moved crosscorr functionality to sigprocessing package
- Allow input to RegressionModel classes to be arrays or tuples, for
increased flexibility and to faciliate testing
- Made regression-related arguments to tuning optional, so tuning can
be run directly on the data without regression
Renamed summary package to sigprocessing, major changes

- Renamed ref to stats
- Refactored entire package so all functions use deriviatives of a
single SigProcessMethod class, e.g. FourierMethod, StatsMethod, etc.
- Dropped saving of zindices from stats, will include as an option
during saving
- Added crosscorr function, previously in regression package
Renamed script for installing numpy and scipy on EC2
Expanded testing

- Added new tests for accuracy throughout
- Testing for kmeans now checks accuracy using k=1 for guaranteed
ground truth
- Testing for SVD now checks result against scipy.linalg
- Dropped explicit testing for PCA because it trivially wraps for SVD
- Testing for ICA now checks against a vetted, external saved result
using a fixed seed
- Testing for regression and tuning now checks accuracy through direct
calls to the fitting classes, separately checks that the main analysis
scripts run
- Testing for signal proessing now checks accuracy through direct calls
to the classes or main analysis scripts as appropriate
Minor cleanup of comments