New Explosion system code changes.
New explosion system yaml changes.
Fix descriptions.
Streamline isValid check.
Change ImpactTypes from array to bitfield approach.
Fixes D2k heavy factory roof displaying below exiting units.

Closes #6236.
Fixes D2K AI constantly repairing weather damage.
Fixes incorrect package name in INSTALL.md

No package `libmono-winforms4.0-cil` exists in Debian or Ubuntu. The correct package name is `libmono-system-windows-forms4.0-cil`.
Merge pull request #6256 from jfinkels/patch-1

Fixes incorrect package name in INSTALL.md
Merge pull request #6248 from reaperrr/d2k-roof-fix

Fix D2k heavy factories roof ZOffset
Merge pull request #6250 from UberWaffe/#6149_AIRepair

Closes #6149
Merge pull request #5937 from reaperrr/explosions2

Implements more sophisticated explosion animation/sound system
Fixed UpgradeRules for #6030.
Fixed Warhead ValidTargets and InvalidTargets.
#6030 regression fix. Added EffectivenessAgainst <= 0 check to IsvalidAgainst for Warhead.
Made Effect, Resource and Smudge warheads return 0% effective against actors.
Fixed custom weapon rules in maps.
Adds Diplomacy keywords for ValidTarget checks.

Changes:

Allows diplomacy stance checks to be done on warheads and weapons, using keywords in ValidTargets and InvalidTargets.
Additional changes: Changed Weapon.Impact to use Target instead of WPos.
Split out some common functionality to DamageWarhead from its derivatives.
Ioncannon changed to AbsoluteSpreadDamage.