Refactor, improve Multipart model

refs #15674
minor: not sure if scaladoc will understand 
```
``...``
```