Flat records produce a predictable table
The input must be a non-empty array of objects. Headers follow the first appearance of each key across the array, missing members become empty cells, and null also becomes an empty cell.
Strings, finite numbers, and booleans are supported. A nested value stops conversion instead of being flattened ambiguously.