add base CRUD methods