I have been on so many servers and such and i have started gaining a few people i know on them, but a server gets shut down and i lose everyone i just met and worked with for months or days. A friends list would just add to the fact of connection.
So how it would work
The client would be the same, but a new option would be Friend List.
-Names would be in green for online and red for not online.
You could open your friends list in game by clicking esc, and going to the friend list bar.
In the main menu you could chat or send small emails to the players. If a player was online you could send them an instant message. Players would only be able to reply outside of the client to avoid lag issues.(As in not in game)
Other than that you could turn it off by going to option and set friends list to offline, invisible, online.
To avoid the unnecessary block button
-You would have to accept a persons friend request. In order to message them out of game and such.
-Also you would have to wait 24 hours before resending a friend request to avoid friend request spamming.
You would have to buy the game to use the friends list opition, an added incentive for those who wish to use it on hacked versions of the game to buy the game.
-This would be like how skins are set up at the moment.