added disconnect handler, allow for recycling of roomId