Optimize VoiceStateCollection
Optimize VoiceStateCollection

- Optimize deleting users from channels (`userDelete`)
- Optimize user state retrieval for change comparison (`getUserStates`)
- Don't calculate/emit changes when there are no listeners
- Cleanup empty channels when users leave

qeled/discordie