Feature/week3

Users can reorder queue items and add ratings. 

The code I added here got pretty complex because I didn't want users to have to manually put in a position for each queue item. I wanted them to be able to change just one queue item and have the remaining items normalize around it. 
Seems like I went down a path that was overly complex 
It seems like these methods are a lot of work just to normalize the queue order...  Why do you have to only change the items that the user changed?  When you normalize the order, what if the items that the user didn't touch need to be changed?