adds do-while to sessionId generation to generate a new one until it's unique
adds ClientConnected - fires when a new connection is opened but not
when the user first connects