Fixes #1093 documentation of modelfactory.py

Hi Matthew,

This PR attempts to fix #1093. It formats the documentation of `modelfactory.py` with the following proposal:
- Turn on `HIDE_SCOPE_NAMES` to reduce some class names (seems to work only for the title of a page)
- Add the type of each parameter in parenthesis when available
- Use the fully qualified type in order to have automatic link generation by Doxygen (see example with the Model class in modelfactory.py)
- Some new kind of virtual types, for instance "templated types" like `list<FieldMetaInfo>`
- Add support for exceptions via `@exception`
- Smart indenting (i.e. start a parameter description on a new line if it needs multiple lines)

Cheers,
syl20bnr

*Note: I just browsed the other doc opened issues and `Model`  is a partial PR for #765*