Step 5: Fully functioning CRUD app