anchor.diff:  				SpanElement newUsername = new SpanElement()
   					..text = map["newUsername"]
   					..style.color = _getColor(map["newUsername"]);
  -				
  +
   				chatString.children
   				..add(oldUsername)
   				..add(text)
   				..add(newUsername);
  -				
  +
   				if(map["username"] == chat.username) //although this message is broadcast to everyone, only change usernames if we were the one to type /setname
   				{
   					chat.username = map["newUsername"];
   					localStorage["username"] = chat.username;
  -					
  +
   					//set name in upper left and above avatar
   					CurrentPlayer.playerName.text = map["newUsername"];
   					setName(map["newUsername"]);
  +
  +					//warn multiplayer server that it will receive messages from a new name but it should be the same person
  +					map['street'] = currentStreet.label;
  +					playerSocket.send(JSON.encode(map));
   				}
  -				
  +
   				connectedUsers.remove(map["username"]);
   				connectedUsers.add(map["newUsername"]);
  -				
  -				//warn multiplayer server that it will receive messages from a new name but it should be the same person
  -				map['street'] = currentStreet.label;
  -				playerSocket.send(JSON.encode(map));
   			}
   			else
   			{
  
positive.code: 				..add(userElement)
  				..add(text)
  				..add(streetElement);
  			
  			removeOtherPlayer(map["username"]);
  		}
  		//TODO: remove after real usernames happen
  
negative.code: 			if(channelName == "Local Chat")
  				map["street"] = currentStreet.label;
  			webSocket.send(JSON.encode(map));
  
  			//get list of all users connected
  			map = new Map();
  			map["hide"] = "true";
  