Refactoring, more tests, more CRUD