Table formatting, minor fixes

The main purpose is the implementation of table formatting, i.e. generating
FormatData and processing it.
Included are minor fixes and refactorings that were needed for the implementation
in order to work properly.

Also error processing has been reworked. Similar as simple data types, the output
of ErrorRecords/Exceptions differs from usual object output. Therefore
ErrorFormatEntryData was introduced which is, similar as SimpleFormatEntryData,
processed out of any document structure and has a default processing method.