Copter: disarm routine shortcut

Extra check so we only run the disarm check when we are actually armed.
The ground stations sometimes send many disarm messages which can be
ignored
Copter: reject change_command if not in AUTO
Copter: Drift Mode

Changes Toy mode declarations to Drift mode.
Requires GPS, Mode 2 transmitter
Drift mode mixes Roll, Pitch and Yaw into a single stick on mode two transmitters.
Update README.md

Updated build instruction link to the one on the Dev.Ardupilot wiki
Copter: remove unused variable from Single copter
CopterMotors: fix example sketch
AP_InertialSensor: added INS_PRODUCT_ID values
AP_InertialSensor: use fabsf()
Copter: pre-arm check of INS health
Copter: ARMING_CHECK made into bitmask

Allows arming checks to be individually enabled or disabled for baro,
compass, GPS, INS, parameters, RC and board voltage
HAL_AVR: force all devices on SPI0 to low speed when one is low speed

this forces MS5611 to low speed when MPU6K is low speed
HAL: MPU6k and Baro SPI to 8Mhz
TradHeli: leaky-I-term based on dynamic_flight_detector
TradHeli: Move Take-off Complete flag from the throttle controller, and into the Dynamic Flight check.  This is to prevent false positive where the collective is pushed up before the motor is started.
TradHeli: Bug Fix on Dynamic Flight / TakeOff Detector
TradHeli: dynamic_flight flag based on inertial nav speed

Created new heli.pde for heli_integrated_swash and check_dynamic_flight
TradHeli: Modify the constrain on the auto throttle controller to prevent it from commanding full down collective if we think we are on the ground still.
TradHeli: Modify Throttle_Auto to prevent helis from pushing hard downward while running up the motor. We will set the collective pitch to stab_col_min which should result in a mild downward pressure if the user has set their parameters correctly.
TradHeli: Add Motor Runup check to the auto_arming check.
Copter: verify_takeoff() should set ap.takeoff_complete to True after the takeoff is complete.