* Tie all voices to skins, allocate voices during skin allocation and patching
* Bring back voice.name, kill voice.parent, add voice.id
* Lua compatibility for voices (again) soon (hopefully)
Skin voices and freeslot voices are no longer separated, with all voices allocating as skin voices would prior.
Due to this, skin voice allocation has been refactored a bit:
- No longer relies on a name string, instead using Dehacked name info hashes and string offsets
- Name string checks now check the voice's Dehacked name; the skin 'tails' will allocate KVOICE_TAILS, and so on
- Overall refactors to fit this new system