Give each xmpp connection different State in different phase
rename StartTLSState to OpeningStreamState
Deal with StartTLS negotation
add a new SASLState