Add joinable boolean check to team.BestAutoJoinTeam

Added check to see if the team is joinable when using team.BestAutoJoinTeam(). team.SetUp includes the boolean isJoinable as the 4th argument, defaults to true. Useful to have a check for if it is false
Fixed text changing in text entry

When updating from history or from the menu, the proper function(s)
is/are being called now, to allow autocomplete support and
callback/event support.
Added Player:GetUserGroup(), tidied up docs in player_auth.lua
Base: Replaced umsgs with net messages.
undo.lua: Replaced umsgs with net messages.
Move ply.IsFullyAuthed to where it sets usergroups. Prevents ply:Is/GetUserGroup() returning a bad result, also gives admin mods more flexability if they want to deal with non authenticated players differently.
Added util.GetUserGroups() - Gets SteamIDs from users.txt table.
TTT: Fixes issue with spectating players at prep

If a player spectates during prep they will be spectating that prop if they die before the round restarts. This calls PROPSEC.End on players who currently have a propspec table during the start of a round, it must also be called after aborting is not possible because we don't want to boot people out of spectator when the round isn't going to start anyway.
Localized Post Processing tab
Added label for PP icon

And removed useless stuff from sandbox.txt
Updated language files

For tools and post processing
Removed useless language files
Fallback to gm_flatgrass if last played map is not found

The last played map may not be found if:
* the player has yet to load a map through the map choice screen after the update which started saving last maps (this includes newcomers)
* the map has been deleted since
* the cookies get cleared or corrupted in some way
Merge pull request #578 from Bo98/last-map-fix

Fallback to gm_flatgrass if the last played map is not found
Merge pull request #577 from robotboy655/lang

Updated language files
Merge pull request #576 from robotboy655/pp

Localized Post Processing tab
Clumsy mistakes fixes.
Merge pull request #551 from HandsomeMatt/remove_umsgs

Replace usermessages with net messages in base gamemode & undo module.
hook.lua : unlimited return values & non gamemode

Updated hook.lua so the hook system is no longer restricted to 6 return values. ( This was changed before but seems to of changed back last year? )
hook.Call( "PlayerSpawn", nil, ... ) would still call GAMEMODE functions, it never used to do this and it's not documented to do this, so made hook.Run use hook.Call with the gamemode table instead of assuming hook.Call will always want to use the gamemode.
Localized Hooks table, undocumented people should be using hook.GetTable() anyway.
Merge pull request #579 from HandsomeMatt/hook_system

Updated Hook System