public static MetricsGossip operator +(MetricsGossip original, NodeMetrics newNode)
{
var existingNodeMetrics = original.NodeMetricsFor(newNode.Address);
return original.Copy(existingNodeMetrics != null ?
original.Nodes.Remove(existingNodeMetrics).Add(existingNodeMetrics.Merge(newNode)) :
original.Nodes.Add(newNode));
}