Add touchscreen input

Adds touch input to HUD scripts.

- Tapping the crosshair toggles zoom.
- Holding the timer opens the scoreboard.
- Weapon selection using weapon HUD icons.
- Touch areas (using cursor position and size): touchJump, touchCrouch, touchAttack, touchSpecial, touchMove, touchView.
- Movement touch input acts as a D-pad with thresholds (cg_touch_moveThreshold, cg_touch_strafeThreshold).
- View touch input can be used both for swiping and as a virtual joystick. Configurable with cg_touch_pitch/yawThreshold/Speed cvars.
- New HUD variables:
-- TOUCH_FLIP: whether the player wants to swap the left and right side of the screen (cg_touch_flip cvar).
-- TOUCH_ATTACK/TOUCH_SPECIAL: whether the attack/special touch buttons are held.
-- TOUCH_UPMOVE: >0 if holding touchscreen jump button, <0 if holding duck, 0 if holding neither or both.
- The crosshair size is now proportional to the screen.