wrapping up major component CRUD