Factor out the SVD model
Refactor FunkSVD item scorer in prep for SVD scorer
Make ImmutableVec.create variadic
Introduce biased MF kernels
Add sub-vector support to vectors
Initial matrix classes (refs #333)
Add missing license header
Improve matrix classes for FunkSVD (#333)
Use matrices and kernel function for FunkSVD

- Add biased MF item scorer
- Improve biased MF kernels and model
- Use biased MF model in FunkSVD
Add package as a separate profile
Fix off-by-one error in Vec
Very small local variable optimization
fix wrong-vector bug in FunkSVD updater
Re-specialize the FunkSVD model builder
Make preference vector code protected