merge function
Merges two Service by overwriting existing attributes where new values are incoming.
Implementation
Service merge(Service existing, Service incoming) => Service(
name: incoming.name ?? existing.name,
type: incoming.type ?? existing.type,
host: incoming.host ?? existing.host,
port: incoming.port ?? existing.port,
txt: incoming.txt ?? existing.txt,
addresses: incoming.addresses ?? existing.addresses);