Implemented create, update and delete