PlayerState is for indivual player info that other players want to know about.
GameState is for game wide info not bound to a specific player that all players needs to know about.
GameMode is for server only logic that noone except the server needs to know about.
PlayerController is an isolated connected between the server and the client that none other than the specific client and the Server knows about.