Fix flatten of complex feature types
Apparently the merge brought back some tests that use `flatten_()` that we removed recently _The documentation is not available anymore as the PR was closed or merged._
Fix `flatten` for the following feature types: Image/Audio, Translation, and  TranslationVariableLanguages.

Inspired by `cast`/`table_cast`, I've introduced a `table_flatten` function to handle the Image/Audio types.

CC: @SBrandeis  

Fix #3686.
