[Pitch] Collection Type Element Property Observers

The newly accepted proposal SE-0240 may well provide a solution. You'll be able to diff your array in the willSet / didSet hooks.