#16 Full support for CRUD with controller

resolves #16