Render captions to m.file, m.image, m.video, and m.audio (#2059)
* Add rendering image captions
* Handle sending captions for images
* Fix caption rendering on m.video and m.audio too
* Remove unused renderBody() parameter
* Fix m.file rendering body instead of filename where possible
* Add caption rendering for generic files
+ Fix video and audio not properly sending captions
* Use m.text for captions & render on demand
* Allow custom HTML in sending captions
* Don't *send* captions
* mvoe content const into renderCaption()
---------
Co-authored-by: Ajay Bura <32841439+ajbura@users.noreply.github.com>