Add restful API controllers

Add specs and testing for restful API controllers
I would prefer the api_response @discussion. More explicit. Anyway let's see how this goes, it looks good.