[cnc] Obelisk now AutoTargeted by units, etc.

Obelisk of light was missing "-AutoTargetIgnore". All the guard towers have it, but for some reason the Obelisk didn't. 
Update mods/cnc/mod.yaml

Add support for Nyergud's Music Upgrade Pack
[cnc] added names for explosions

Easier-to-understand names for explosions, which can be used in the future. Can phase out old names/numbers slowly.
Also included some explosions from the C&C Content which were not in use and did not have names.
[cnc] inftry detect cloaked in next tile(C&C orig)

Infantry can detect cloaked units in the next tile. This behaviour was in the original C&C Gold.
(Even though it says range=2, it is actually just in the next tile)

Fixed GrenadierExplode.
[cnc] Airstrike cooldown 3 mins. (from 4). tweaks.

Air Strike cooldown time reduced from 4 minutes to 3. (Ion Cannon is 3). [games are short in CNC, and waiting 4 minutes for your first airstrike is a long time.]
HQ's hitpoints reduced to 750, so it can be nuked in one shot. (but not Ion Cannon'd) 
Airfield HP reduced to 1500, so Ion + Airstrike can destroy it. (For some reason, it doesn't die as easily as Weapons Factory, despite having the same HP)
make hotkey user-configurable via in-game settings
changing name of big_poof, for consistency

Changed "big_poof" to simply "poof". 

The word "big" will only appear if there are small, medium and large versions of the explosion.
Otherwise, it will just be "explosion" and "small_explosion".
Merge pull request #2662 from psydev/patch-40

[cnc] Obelisk AutoTargeted, airstrike cooldown, +misc.
Rework color picker palette modification.

The old method had the lobby code dig around inside
the palette modification machinery, which was a giant
hack preventing necessary streamlining.
Remove hardcoded list of palette mod exclusions.
Remove unnecessary indirection from palette creation.
Add bitmap export to palette (for debugging).
Apply consistent formatting to Renderer (no code changes).
Remove duplication between world/chrome shaders.
Wrap palette references with a PaletteRef object.
Add a cache of PaletteReferences to WorldRenderer.

I don't expect any perf improvements by using this
cache, as you're simply moving the row lookup from
render-time to fetch-time. However, this is a
cleaner abstraction, and allows us to fail early
if the palette doesn't exist.
Move effects to WorldRenderer palette lookup.
Pass a PaletteReference to RenderPreview.
Pass WorldRenderer to IRenderModifiers and replace more palette lookups.
Merge pull request #2670 from psydev/patch-47

[cnc] added names for explosions