public EchoServer()
        {
            TcpListener listener = new TcpListener(ip, portNumber);
            listener.Start();

            while (true)
            {
                Console.WriteLine("Waiting for a conncetion - number of connections: {0}", connections.Count);
                Socket socket = listener.AcceptSocket();
                EchoConnection conn = new EchoConnection(socket, this);
                connections.Add(conn);

                Task.Factory.StartNew(() => conn.Listen());
                Console.WriteLine("Connected a client");
            }
        }
        public EchoServer()
        {
            TcpListener listener = new TcpListener(ip, portNumber);

            listener.Start();

            while (true)
            {
                Console.WriteLine("Waiting for a conncetion - number of connections: {0}", connections.Count);
                Socket         socket = listener.AcceptSocket();
                EchoConnection conn   = new EchoConnection(socket, this);
                connections.Add(conn);

                Task.Factory.StartNew(() => conn.Listen());
                Console.WriteLine("Connected a client");
            }
        }