ACMotors: small formatting change
WPNav: divide by zero checks
Copter: change to compassmot instructions
HAL_PX4: added new arming ioctls
Copter: add pre_arm_rc_check

Motors are not be enabled unless we have passed rc checks which include
checking the radio in calibration has been performed.
Rover: add doc links for SONAR2_* parameters
AP_AHRS: added get_projected_position()

this is used to project the position forward by the GPS lag
Rover: use get_projected_position()

this will make for more accurate turns in missions
Rover: don't do crosstrack in last 3m

this reduces the weaving at waypoints
Rover: started on 2.42beta
autotest: setup Rover autotest for Sparkfun course

this will make it easier to test around the course
Copter: do pre-arm checks when arming from GCS
Copter: simplify APM_Config.h

Remove items that can be more easily set with parameters
Copter: remove unused JDrones motor PID overrides
Copter: remove unused dump_state function

Feel free to add this back in when doing debug.  Let's not have too much
debug permanently in the code because it makes it harder to read.
Copter: minor user hooks cleanup

Only define and call functions if the appropriate #define in
APM_Config.h has been added
Copter: remove unused MODE bit from LOG_BITMASK

We always log the mode so no need for this bit
Copter: ch8 aux switch

Ch8 can be used as an aux switch like ch7.  Has all the same options as
ch7 and there is a safety check to ensure both switches aren't set to
the same function so as to avoid interfering with each other
Copter: update CH7_OPT, CH8_OPT to include Multi Mode
Copter: remove unused AUTO_SLEW_RATE parameter