CRUD working, but still need to improve overall implementation