fix for cases where a leave looks like a join, and also when a user quits we don't use undefined properties. resolves #178