finished implementing basic CRUD methods