Usually (as in never, but if I ever had to) I’d just create a pull request on GitHub, but since the code isn’t in any repository, I guess I could send them here.
If I end up sending entire files, you’ll have to make sure not to overwrite your own changes that aren’t in the latest sources yet. I always prefix comments before my changes with [Cecil] in the beginning, so maybe you could look those up.
Regarding the IDs, it would only cause problems if there were any collisions. Properties are usually identified by both ID and type, so because those properties had different types, it was fine.
As for the component, the issues it currently has are (1) inability to precache it and (2) it would always play the previous sound because it’s always found first. If it was something else (e.g. a model), it would’ve caused crashes when it expects one type but ends up finding another under the same ID.