Add support for generating terrain in a separate process

For measuring CPU usage of the terrain gen separately from the main server.

The config option in server.properties is external-generation. To override the executable used to launch the external generator (the default is HHVM), use the option external-generation-cmd

The transport used is Unix sockets, like stock threaded generation. External generator logs are printed to /tmp/pmexternal