utils: Generalize XdpAppInfo with a tagged union
utils: Generalize XdpAppInfo with a tagged union

Snap support will need more than one kind of XdpAppInfo, and support
for the D-Bus Containers1 interface will need metadata in formats
other than a GKeyFile (it exposes metadata as an a{sv}). Generalize
the contents of the struct a bit.

Signed-off-by: Simon McVittie <0e1aea601907c1a85c2dc96e5ea37e23c58d2e9b@collabora.com>

matthiasclasen/xdg-desktop-portal,matthiasclasen/xdg-desktop-portal,matthiasclasen/xdg-desktop-portal,matthiasclasen/xdg-desktop-portal,matthiasclasen/xdg-desktop-portal,flatpak/xdg-desktop-portal,flatpak/xdg-desktop-portal,flatpak/xdg-desktop-portal,flatpak/xdg-desktop-portal