Refactoring and fixes.
Things put in mongo hopefully only have one id field now (e.g. CRSID for users).
Tests are now passed both using HashMapCollection and MongoCollection (and it is now very easy to specify which to use for the tests).