Defined new models for users and musics

Using mongoose, defined schemas and models for users as well as musics,
with the users model containing two methods
'usersIFollow' and 'musicIListenedTo'
Rankings now generated using mongoose models

Currently rankings are being calculated twice to ensure that the ones
generated using mongoose models and my previous method are identical.
They are
Project now using mongoose models, fixes #6

I have deleted out all previous code pretaining to the default mongo
client, and replaced it with mongoose equivalents, and models.
Fixed up bug with random song recommendations

Originally, randomly selected songs were not being removed if they have
already been listened to by the user.
The randomly selected song should now not be selected if the user has
heard it before