Backport "Refactor Channel::UserList() to use std::string"

This gets rid of questionable snprintf() usage, reported by @hifi

Backported commit: 8a06d54076551387f83a29360478ee6605e241b6