Support flat C arrays of structures
See #44. There it is asserted that a cleanup list is necessary to support flat arrays, but that's not entirely correct; here is an implementation that doesn't require cleanup lists. However, this doesn't close that issue, just downgrades it from a crash to an enhancement.
The first commit should be backported to gnome-3-34.
Edited by Philip Chimento