Add restful API controllers

Add specs and testing for restful API controllers
It's never really fetchOne though. In this case, i think it's important that the name tells you what it does, that "fetch" does not do. As I read it this is fetchByKey rather than fetchOne