restarted CollabFilter.py clean to reimplement everything based on the new design outlined in Math/