Copter: log CURR message at 10hz
Copter: add throttle_zero state
Copter: Change all zero throttle checks that should be conservative to use ap.throttle_zero
Copter: throttle zero debounce to separate function

Also initialise throttle_zero  to true on startup
Treat throttle less than zero as zero
Rover: fixed skid steering

the main issue was the use of the last throttle in the throttle slew
rate control, but manual skid steering was also broken
HAL_Linux: don't accept less than 5 input channels
Rover: prepare 2.47beta1
AP_RangeFinder: handle all I2C rangefinder types on PX4 in PX4Firmware
INS: add gyro_calibrated_ok_all method

This returns true if the gyros have been calibrated successfully
Copter: pre-arm check that gyro cal succeeded
Copter: report gyro unhealthy if failed calibration
Copter: support pre-flight calibration of gyro
Plane: report gyro unhealthy if failed calibration
Rover: report gyro unhealthy if failed calibration
HAL_Linux: improved UDP packetisation and add flow control reporting

report we have flow control on UDP and TCP
HAL_Linux: reduce the number of times we split up UART reads
HAL_PX4: reduce the number of times we split up UART reads and writes
HAL_VRBRAIN: reduce the number of times we split up UART reads and writes
HAL_Linux: fixed build warnings
AP_InertialNav: fixed use of _ahrs.get_relative_position_NED() with EKF disabled

this prevents a floating point error caused by using an uninitialised
vector3 when switching between DCM and EKF control in AP_InertialNav

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>