Fixed re-joining as an existing user

Joining a game used to create a new user in all cases. This has been
changed so that if you type in an existing player name, you join
as that player.

Implemented by changing client.main() to call
find_or_add_player(player_name) and changed the function
gamestate.add_player to find_or_add_player. It now searches the
list of players and if the name matches, it returns the index of this
name. If no match is found, a player is added.