Gang Garrison Builder 2

Adds a bunch of stuff including:
* Dynamic gamemode and entity loading (making it really easy for plugins to add stuff).
* Built in garrison builder with the ability to instantly toggle between playtesting and building.
* New map saving format that allows custom properties such as scaling and more (see moveboxes and medcabs)
* Fixes moveboxes speeding up faster in 60 fps mode (while also adding a speed property)
* Ajfs GGON
* Cspotcode's dll because ajf told me to.

See thread here: http://www.ganggarrison.com/forums/index.php?topic=35951.0
(the mod download there is not up to date with the repository)

Ps I didn't do A LOT of testing, but everything seems to work.
@Medo42 That's a good point. I tend to use `real` and then note it's a `ds_list` handle in the description of the argument, but we might as well just do this:

    `list fooBar(map properties, bool wipeHardDrive, buffer sendBuffer, socket listener, queue priorities, uint minionsToExecute, [int minionDelta[, real minionRatio[, instance minionLeader[, object minionTemplate]]]]);`

It's all reals and strings underneath, but this conveys more information, as you said. I think `uint` and `int` make sense in some places (so it's clear you don't want a fraction), as would `bool` (0 or 1), and we could acknowledge faucet networking stuff.

I could even write a static analyser that would read these standard function signatures... :D