WIP: Add first pass at having a monitor for the MultipartEncoder

- Updated version of @deuiore's idea

TODO:

- [ ] Add tests (and then more tests)
- [ ] Put together an example of a progress bar with clint