Add upload feature

- [ ] Schema
- [ ] Model
- [ ] Controller
- [ ] View