Town network

Town Networks extend the functionality of linked towns, to allow transfer of population between any two towns in the same network, rather than just to the directly linked ones.
Towns are in the same network if they are of the same nation and they are either directly linked, or indirectly via multiple towns also of the same nation.

This will greatly simplify population management, especially with larger nations, by drastically reducing the number of times you have to click.

-------------------------------

I already tested the merge of the two, and only had to resolve the following conflict in AM.cpp:

    ------------------------------ src/client/AM.cpp ------------------------------
    index 33f3fad,7b01bdc..38442bf
    @@@ -68,8 -68,6 +68,7 @@@
      #include <OTECHRES.h>
      #include <OTERRAIN.h>
      #include <OTOWN.h>
     +#include <OTownNetwork.h>
    - #include <OTRANSL.h>
      #include <OUNIT.h>
      #include <OVGA.h>
      #include <vga_util.h>

That is, removing the OTRANSL class, but adding the Town Network header.