836 refactor reservations controller

Resolves #836 

Actually, I'm going to go and write tests for this so don't merge until then
got it, it was this line. We need to add this back in down below.