forced user to enter username before connecting.
client handles server disconnect with grace.
ensures that when the window is closed, the client is disconnected.