Tidy IInputHandler.
Split text input into its own event.
Tidy renderer dependencies.
Add SDL2 renderer based on SDL2# wrapper. Closes #3315.

SDL2# binary was built from commit 70af91f84493a924a3c1da46ae6209bb5f7222e3.
Add Haos Ridges C&C map.

Includes minor tweaks to the description and Options.
Fix player spawns in Deterring Democracy.
Double clicking a map in the chooser now selects it.
compressed regular maps without custom rules to oramap
Merge pull request #4023 from pchote/map-fixes

Map changes
Add a helper for finding the map edge in a given direction.
Support CenterPositionInit for Aircraft.
Checks to make sure Attacker is not null.
Ignores self-attacking.
Ignores friendly-fire that does <= 0 damage (repairs).
Merge pull request #4037 from Phrohdoh/EngineerFalseAttackWarning

Fixes #3963
Merge pull request #4031 from pchote/sdl2

Add a SDL2-GL renderer.
Don't crash if trying to check targets outside the map.
Add squad and quantisation support to AirstrikePower.
CarpetBomb -> AttackBomber.
Fix GravityBomb explosion position.
Change the C&C Airstrike to be more support than sniper.

Slight buff to total damage dealt, but no longer 1-shots buildings.
Add contrails to C17 too.