lots of changes
fix typo
bump version
joining of rooms is done on a different thread
use locking to prevent race condition
remove onstartjoin hack

backward incomparable changes:
joinRoom no longer return the room, instead it return True and add it to the room joining queue
onStartJoin is remove, it's no longer needed since joining of room is done on another thread now