Optim: lazy-allocate Sound Modulator lists
- Added an assert to trigger when we try to remove a modulator we don't own
Noticed that we have 3 modulators on average per 4 lists of modulators, so we can save 1-3 lists per sound and recycle better.
Tests: When driving around, got max 42 SoundModulation instances with 66 lists (instead of 168 previously)