It'd be really handy if Kudzu could do some basic logic and notice when hardware is replaced by other hardware and let the user know. This would only work in the case where the exact number of similar devices remains the same. For example if a user replaces a 3c905c with an eepro100. There is still 1 network card, so odds are strong that it was a swap. In those cases instead of walking them through the removal then the addition, you would walk them through a swap. "Kudzu has detected that you have replaced 3Com 905C|Scary Name| with Intel EEPro 100|Scary Name." Users should be asked "Is this correct?" and be given "Yes, Migrate Settings." "Yes, Reconfigure" or "No", where no would just walk through removal then addition. To test this, install Linux on a swappable drive and swap it to a different machine with similar, but not identical hardware.
Swapping network cards works quite nicely (at least for me), settings are transferred when the second device is configured.
Swapping of network cards should just work, and video cards also have been tested. Kudzu as of 7.1 DTRT with respect to mice as well.