empty desc parameter in SetChannelDesc is OK
(re)added a ton of client-related natives and callbacks
fixed thread safety