836 refactor reservations controller

Resolves #836