Factor out the CVec direction list.
Initial terrain domain work
Properly deal with FindUnitPathToRange

This fixes boats attacking land targets.
Use MobileInfo.GetMovementClass for domain indexing, clearing path for caching and smarter behavior
 * Move DomainIndex from being a manual hard-coded hook in World to an IWorldLoaded trait.
Add support for bridge construction

Each movement class is given a crude transientDomain graph.  Whenever a bridge state
changes, the domain index rebuilds the relevant cells, setting its domain and creating
a transient domain connection.

This graph is searched as a fallback if the straightforward domain comparison is false.
Behavior needs to be double-checked, and ideally destructing connections would be supported,
but so far performance and behavior on allies-02 seems good.
Substantial performance improvement in DomainIndex
      * Get rid of HashSets
      * Cache CanTraverseTile()'s terrain offsets
Add self to AUTHORS
Use static empty pathfinding path when possible
Add IEnumerable.RandomOrDefault extension.
Improve support for picking a valid actor spawn cell.
Smarter unit spawn logic. Fixes #3496.
Fix Doughnut Hole spawn behavior.
Remove obsolete DefaultStartingUnits parameter.

It was only actually used by bomber-john. Everything
else also removed SpawnMPUnits, making it redundant.
Add lobby support for configuring starting units.
Enable starting units in C&C.
Update changelog for new playtest.
Revert "restrict packet size to 4K in server"

This reverts commit edb08d6feca72dec719ea7d292b08676539a9b9a.
Fix alphabetical ordering of AUTHORS.
Fix C&C credits back button position.
Make the RA superweapon descriptions a bit more consistent