Audio mixer update

Replace any invalid unregistered handles with new ones, instead of
appending to the end of an array and keeping the old handle around.
Prevents a memory leak in the mixer if the audio is constantly
enabled/disabled over and over forever.

We could have used a JavaScript weak set here, but that's not necessary
and not backwards compatible.