agreement CRUD done, with tests