Convert projectiles to world coordinates.

This ports the projectile code to world coordinates, which was the last of the simulation code to go.

Notable non-refactoring changes:
* Artillery trails don't instantly vanish when the projectile hits.
* Carpet bombs can now accelerate when falling.
* Missiles now account for altitude (#3347), and have a configurable climb rate.
* Finer grained vector -> facing calculations (it was previously limited to 32 facings).