836 refactor reservations controller

Resolves #836 

Actually, I'm going to go and write tests for this so don't merge until then

<!---
@huboard:{"order":905.0,"milestone_order":882,"custom_state":""}
-->

Got it. That functionality should be essentially replicated in the
replacement model method (i.e. we make note of when someone added notes to
a reservation with a header of some kind). I believe this falls under the
`update` method). Does that make sense?