ETJump 3.1.0

- deprecated 'target_printname' entity - all functionality is included in 'target_print'
  - existing 'target_printname' entities continue to work normally
- added support for 'wm_announce_private' script action for doing per-client announces via mapscript
  - must be activated via entity that carries activator (e.g. 'target_script_trigger' or 'trigger_multiple')
- fixed team/ft chat closing parenthesis/bracket being affected by player name colors
- added name replacement support for 'wm_announce/wm_announce_private'
  - '%s' will be replaced with activators name, needs activation via entity that carries activator (e.g. 'target_script_trigger' or 'trigger_multiple')
- fixed 'cg_uinfo' bug on 64-bit Windows clients using ETe
- fixed incorrect friction and look sensitivity in freecam
- 'players' command will now display the game engine used by each client
  - additionally value of 'snaps' is colored red, if it's less than 'sv_fps' value
- OB watcher improvements
  - 'ob_save [name]' and 'ob_load [name]' are now functional
  - implemented 'ob_list' to display saved coordinates
  - OB watcher now correctly detects surfaces that don't allow overbounce
  - fixed coordinate prints having incorrect z height (was using 'ps.origin', now shifted to feet level)
  - most prints are now popups instead of console prints
- fixed multiple potential crashes in various places
  - most notable ones:
    - fixed crash when firing 'shooter_grenade' - the entity is now usable
    - fixed crash with 'target_activate' when activated without activator
    - fixed crash with 'setplayerspawn/setplayerautospawn/killplayer/damageplayer' script actions when activated without activator
- cleaned up several unused server cvars
- fixed incorrect format specifier in 'await' command causing a crash
- '[map]' parameter in 'ranks [map] [run]' command is no longer case sensitive
- demo filenames in replay menu are now stripped of color codes
- inactive specators are now drawn semi transparent in spectator list
- fixed portalgun bypassing checks for 'g_weapons' and 'g_knifeOnly'
- optimized etjump renderable system, potentially increasing performance in some scenarios by ~30%
- added 'etjump_game_manager' entity
  - automatically placed on a map if no 'script_multiplayer' or entities with 'scriptname' are present to always allow mapscripting on any map
    - access is provided via 'etjump_manager' script block
  - not meant to be placed by mappers - this functions the same as 'script_multiplayer' entity
- added 'etj_autoPortalBinds' cvar to automatically bind 'weapalt' to '+attack2' and back when switchig to/from portalgun
  - this effectively allows you to use portalgun with 'weapalt' without having to separetly bind '+attack2'
- fixed not being able to enter wounded state during timeruns, which broke some timeruns ('2weeks' for example)
- improved 'target_remove_portals' entity
  - added 'spawnflags 2' to fire targets when portals are removed
  - added 'noise' & 'volume' keys to play a sound when portals are removed
- added 'target_portal_relay' entity
  - fires targets if activator has fired less or equal amount of portals as defined by 'maxportals' key since last portal reset
- portalgun portals of spectated player are no longer displayed with "others" portal colors
- reduced portalgun portal shader size to match the actual portal size better
- casting multiple votes is no longer possible by reconnecting
  - votes called by a disconnecting client are also now automatically canceled
- improved '!seasons' command output
  - seasons are now grouped to active, upcoming and past seasons
  - 'Default' season is no longer displayed
  - start and end dates should be more legible
- 'etj_drawCGaz' is now a bitflag cvar and allows drawing both CGaz huds at the same time
- added checkpoint popups that display the checkpoint timer briefly on screen when hitting a checkpoint
  - 'etj_checkpointsPopup' - toggle popup
  - 'etj_checkpointsPopupX/Y' - X/Y position
  - 'etj_checkpointsPopupSize' - popup size
  - 'etj_checkpointsPopupShadow' - toggle shadow
  - 'etj_checkpointsPopupDuration' - how long the popup stays on screen
- added Rock The Vote system
  - random map vote with a specified amount of maps to choose from
  - 'callvote rtv' or '!rtv' admin command to call rtv
  - automatic rtv mode - server will call rtv every N minutes, can be voted on/off
  - server cvars:
    - 'g_autoRtv' - automatic rtv interval in minutes, 0 for off
    - 'g_rtvMaxMaps' - maximum amount of maps in rtv vote (2-9)
    - 'vote_minRtvDuration' - minimum vote duration for rtv (like 'vote_minVoteDuration' but only for rtv)
    - 'vote_allow_rtv' - toggle allowing clients to call rtv
    - 'vote_allow_autoRtv' - toggle allowing clients to turn autortv on/off
- fixed client vote info (such as re-vote counts) not resetting if a vote was canceled or failed
- deprecated 'trigger_multiple' spawnflags '512/2048' - all triggers are now multi-activator by default
- fixed 'backup' queue breaking on initial save to a specific slot
- fixed '/ranks [mapname] [runname]' failing if given map name had a partial match to another map
  - the command now also supports partial matching for the map name like it does for run name
- jump speeds are now rounded instead of truncated, like every other speed display
- saves are no longer explicitly cleared on timerun start, only saves which were made during a timerun
  - any save slot that was saved into during a timerun will be reset
  - backups are cleared of any backups made from timerun saves, and valid slots are pushed to the front of the queue
- timeruns no longer start if client has set 'pmove_fixed 0' after spawning
  - does not apply to timeruns which do not force 'pmove_fixed 1'
- added 'nowallbug' worldspawn key to prevent acceleration while stuck in a wall
- added custom vote editing via admin commands
  - '!add-customvote --name --full-name --maps' - adds a custom vote list
  - '!delete-customvote --name' - deletes a custom vote list
  - '!edit-customvote --list --name --full-name --add-maps --remove-maps' - edits a custom vote list
  - access is provided with admin flag 'c'
  - added '/readCustomvotes' command to read customvote file
  - added 'customvotes' alias for 'listinfo'
- added support for no-noclip areas with 'surfaceparm donotenterlarge'
  - 'etj_drawNoclipIndicator' - draw noclip area indicator, 1 = always, 2 = outside of volume, 3 = inside of volume
  - 'etj_noclipIndicatorX/Y' - X/Y position
- added 'etj_fixedCushionSteps' to play proper fall step sounds on cushion surfaces
  