public GameData(Networking networking)
        {
            this.networking = networking;
            networking.OnGameStartedMessage += GameStartedHandler;
            networking.OnGameEndedMessage += GameEndedHandler;

            figures = new ChessFigures();

            NewGame();
        }
		public UserData(Networking networking) 
		{
			this.networking = networking;
			
			this.networking.OnUnknownMessage += delegate(string s) { OnUnknownMessage(s); };
			this.networking.OnDeniedMessage += delegate(string s) { OnDeniedMessage(s); };
			this.networking.OnUserJoinedMessage += delegate(string s) { OnUserJoinedMessage(s); };
			this.networking.OnUserLeftMessage += delegate(string s) { OnUserLeftMessage(s); };
			this.networking.OnChallengedMessage += delegate(string s) { OnChallengedMessage(s); };
			this.networking.OnChallengeRevokedMessage += delegate(string s) { OnChallengeRevokedMessage(s); };
			this.networking.OnGameStartedMessage += delegate() { OnGameStartedMessage(); };
			this.networking.OnGameEndedMessage += delegate() { OnGameEndedMessage(); };
			this.networking.OnSayMessage += delegate(string s,string m) { OnSayMessage(s,m); };

			this.networking.OnConnected += delegate() { OnConnected(); };
			this.networking.OnJoinedRoom += delegate() { OnJoinedRoom(); };
		}