This is still very much a work in progress - I can now get module-udev-detect to work, but only by loading extensions like this:
1. pulseaudio [after first removing the dep file so only pulseaudio loads
2. alsa, rhythmbox where order doesn't matter
3. libpulseaudio
4. udev-lib
If I leave pulseaudio.tcz.dep in place and load alsa, rhythmbox, pulseaudio in any order, then module-udev-detect will not detect my sound card.
Perhaps the order in which the file "78-sound-card.rules" and the alsa-modules/udev-lib extension get loaded is important, but at this point nothing is too clear.