UAVO browser was emitting updates on every UAVO receive event. This was
inefficient and led to a high processor usage, as well as causing the
browser to drop a high percantage of updates.

The patch centralizes the dataChanged emits, and places them on a timer.
UAVO browser processor load fell over 50% and data updates beyond 3Hz are
now reliably shown.
Updated updateChanged() throttling to act directly on view, instead of data.
Moved all awareness of update ranges out of data model and into tree view.
Added dynamic throttling to UAVO browser. The throttling updates the UAVO
browser at the speed of the fastest visible UAVO, up to a certain
threshold. After this threshold, the throttle is scaled exponentially,
such that the maximum refresh rate is around 30Hz.
FixedWingFollower: Allow circling in PH/RTH

Previously only a position to fly to was allow in the
fixed wing follower which resulted in repeatedly passing
over that coordinate and turning around.
Paths: Make ModeParameter the radius for circle position

Previously the radius was calculated from the start mine end
position but there is no reason to use that representation
other than to be confusing.
RTH/PH: Mode is now airframe type dependent

Fixed wing aircrafts should hold position by circling
a location.  Hardcoding to circle left with 50 m radius.

VTOL behavior unchanged and tries to hold exact location.
FixedWingFollower: Use math library bound
FixedWingFollower: Only update objects that changed

Previously every object was updated every cycle.  This reduces
the amount of locking of the semaphore.
FixedWingFollower: Remove some unused object accesses
Simulation: Add airspeed to fixed wing simulation
FixedWing: Some style clean up
FixedWingFollower: Make RTH/PH radius settable
FW Sim: Add comment about assumptions
Fixed "dirty/clean" functionality to work properly on all tabs,
including autogenerated ones.
Changed to using signal/slot approach, instead of directly calling the
setDirty method. This ensure that the calibration methods are independent
of the calling widget, which allows for easy reuse.
Fixed dirty/clean support in output tab.
Changes requested from review.
Add specific dirty check for PipX. The behavior is now:
1) if an autopilot is connected then all pages generate warnings
2) if a PipX but there is no autopilot connected, then only the PipX
   configuration tab generates unsaved warnings
3) if nothing is connected then no pages generate warnings.
pios_l3gd20: fixed formatting
That was too crappy so i couldn't resist.
For the record, i used astyle with the following options to reformat:
--suffix=none --lineend=linux --mode=c --align-pointer=type --align-reference=type --indent=tab=4 --style=allman --break-blocks --pad-oper --pad-header --unpad-paren