AP_NavEKF: Fix bug in pre-flight gyro bias logic

This reduces the noise on gyro bias estimates for copter and rover because
the increased process noise intended to aid initial bias estimation after
start is no longer tied to ground mode, which can toggle on and off for
those vehicle types, but is instead tied to the pre-arm static mode, which
is a more reliable indicator.

Also the scaler has been reduced to reduce noise on estimates pre-flight
Replay: fixed ahrs.set_fly_forward() in Replay for copter
AP_NavEKF: Fix bug that could cause divergence in magnetic field states

Leaving the off-diagonal terms in the state covariance matrix frozen
when magnetic fields state corrections were inhibited was incorrect as
these terms capture the correlation between the errors in the various
states, and need to either be continuously updated, or zeroed.

A theoretically more correct approach is to turn the process noise on these
states to zero when corrections are being inhibited, which keeps all the
correlation information up to date. This has been applied to the magnetic
field covariances. the simpler approach of resetting the off diagonal terms
to zero was not used as this slows learning to a crawl when the inhibit
is being turned on and off constantly which is the case for copter

For wind states, the simpler approach of zeroing the off diagonals in the
P matrix has been adopted, as wind state estimation is not turned on and
off constantly in flight like magnetic field estimation can be for copter
and rover
AP_NavEKF: Add divergence check to filter health