AP_AHRS: removed the AHRS_GPS_DELAY parameter

the best value has turned out to be 1, and tweaking it has not turned
out to be useful, so this simplifies the code in preparation for
adding the anti-aliasing handling with multiple accelerometers
AP_AHRS: choose the best accelerometer at each drift correction step

this greatly reduces the impact of aliasing on accelerometers by
choosing the accelerometer that produces the smallest error term in
DCM. The difference can be quite dramatic on the Pixhawk.
AP_NavEKF: use the accelerometer chosen by DCM for each step
AP_Compass: improved COMPASS_ORIENT and COMPASS_EXTERNAL for Pixhawk
AP_InertialSensor: expose get_primary_accel() for use in AHRS
AP_AHRS: use primary accel for accel_ef

Logs from Randy show that the copter INav code can't handle the
accelerometer sensor changing.
AP_NavEKF : Increase the tuning range for magnetometer measurement noise
AP_AHRS: added get_fly_forward() method

will be used to detect a copter
AP_NavEKF: only use the active accel from DCM if fly_forward is set
AP_NavEKF : Read second IMU data if available
AP_NavEKF : Added states to support dual IMU