Fix bug where userlist would be empty after using rejoin feature

Instead of sending a PART followed by a JOIN, use Channel.leave() and Channel.join() to rejoin the channel.

This closes #51.