Add restful API controllers

Add specs and testing for restful API controllers
Yep, that makes sense.