agent-manager: Don't ever fail the secrets requests from GetSecrets()

VPN connections always return true for nm_connection_need_secrets(), but the
documented behavior of GetSecrets() is just to return any secrets we have
(otherwise nmcli c --show-secrets would not be useful for VPN connections).
core: Don't wipe out VPN secrets if we're changing the connection

The VPN secret properties are hashes and thus don't have a usefult default
value. It's safe to assume that an empty hash does not hold a secret value.
cli: Expose vpn.persistent property
cli: Error out early if we fail parsing header fields and don't handle errors

parse_output_fields() crashes if it encounters an error (nonexistend column)
and it is called with error == NULL. That should never happen, as it's never
called with NULL error against user input. However, it is useful to assert
that is the case -- it gives us a more useful crash in case of a programmer
error.
Merge branch 'lr-veth-rm', remote-tracking branches 'fd/lr/ipv6-tokens', 'fd/lr/veth-managed', 'fd/lr/no-udev' and 'fd/lr/vpn-fixes' into integration