Fixtype of translation units [C17:6.9] [C17:A.2.4].
This is a product type introduced by fty::defprod.
This corresponds to translation-unit in the grammar in [C17].
A translation unit consists of a list of external declarations, optionally preceded by a line comment, which we represent as its content, namely a list of character codes; the comment is absent if the list is empty. This is useful when generating code: the comment can convey information about the generation. We may eventually generalize this to allow both line and block comments at the top level, intermixed with external declarations, also extending our parser to recognize and preserve those comments (now the tokenizer skips over all comments.
We also add a slot with additional information, e.g. from validation.