improve error message
implementation of warp with item features, first working version
simplify by precomputing feature projection
don't precompute feature embedding, bit more efficient
warp with item features working now, some refactoring

* removed the worst code duplication
* but still need to refactor the internals of the warp
  (and other mf) recommenders into model classes
refactor warp to separate out model, also much faster
add item_features to all recommender apis
support parallel train/predict with warp2 and item features
refactor and tidy up warp model classes

* improve docstrings
* move cython code to model dir
support sparse item features

* update warp model and cython functions
* update docstrings in all recommender classes
maintain version number in mrec/__init__.py
fix save/load of sparse matrix to .npz
tidy up for sparse item features
add extract_movie_features script, update docs for new release
fix to predict script for popularity recommender
tweaks to docs
Merge branch 'develop'