Added tab completion to in-game 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.
Code cleanup based on code review.

Fixes multiple enumeration of IEnumerable.
Fixes return value of pure method not used.
Converted OnTabKey and OnClick handlers to method groups.
Removed one set of redundant parenthesis.
Replaced explicit type with var.
Added tab completion to lobby chat.

Also fixes accidental reversion of one word logic during cleanup.
Fields that could be readonly are now readonly.
Fixed starport and palace
Update AUTHORS

Added myself as requested by Mailaender.
Replaced ForEach with loop, moved Trim outside.
Replaced GetPlayerNames method with simpler linq.

Bonus feature: it now auto complete bot names as well.
Fixes double auto completion.

Pressing tab twice would auto complete (the same name) twice.
Auto completion is now disabled when last character in sentence is a
space.
Fixes double auto completion in in-game chat.
Fixed SpriteRenderer offset bug.
Cursor Doubling

Cursor now doubles with pixel doubling, enabled by a new checkbox in the
settings menu.
Disable fontconfig under OSX. Fixes #4785.
Don’t clear shroud outside the map.  Fixes #6097.
Add creeps to scripted missions

Fixes #6298
Fixed invulnerable infantry

Closes #6263
Set the package version in the OS X .app.
Merge pull request #6307 from pchote/osx-bundle-version

Set the package version in the OS X .app
Account for map edges in Shroud.IsExploredCore.
Don’t leak information about hidden actors.  Fixes #6125.
Visual fixes for TS structures and units.