This provides some support files for building APM on normal desktop
systems. This makes it possible to use debugging tools (such as gdb
and valgrind) on the APM code

The code can then run on the PC instead of on the Arduino board and
simulate the behaviour of the real system by integrating it with
X-Plane of FlightGear to build a Software-In-the-Loop (SIL) simulator.

It will use TCP sockets to communicate between the several software
components (ArduPilot, GCS and Flight simulator). All the ArduPilot
serial ports that get initialised map to separate TCP ports, which
means you can separately test the telemetry port and the main serial
port. It also makes using a debugger easier, as the debugger can use
stdin/stdout.

So the new usage is:

 1) build with "make -f ../libraries/Desktop/Makefile.desktop hil"

 2) start in a terminal like this: /tmp/ArduPlane.build/ArduPlane.elf
    it will say something like this:

      Serial port 0 on TCP port 5760
      Waiting for connection ....

 3) start a GCS, pointing it at localhost:5760. For the current
    mavproxy, you would use:

       mavproxy.py --master=tcp:localhost:5760

    MichaelO has also added support in the GCS mission planner for TCP.
    You will see a TCP option in the drop down for the serial port, then
    choose port 5760.
