Request types api

Closes #46 
Might be worth waiting for #22 to be completed so this can live on `ApplicationController`.