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.
@pchote `players` is enumerated twice (line 47 and 51), this way the linq logic is executed once rather than twice.