Added tab completion to in-game and lobby chat.

 - Both player names and chat commands can be completed.
 - Names of local players and bots are not candidates for completion.
 - If a completed name is the first word ": " is appended to the end.
 - The hotkey for toggling team/all chat has been moved to left Alt.
Was there a specific reason for `.ToList()`ing this?