Don’t emit invariant annotations on variables where they’re not supported.
Extend the initialiser hack slightly so that it works on arrays of capabilities.
Note that this, in theory, needs to be fully generalised to discover if any of the types that are being stored are capabilities by walking down array and struct definitions.  Hopefully this is enough to get the demos working…