AP_NavEKF: fixed millisecond subtraction for rollover

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
PosControl: update_pos_controller renamed to update_xy_controller
Circle: integrate update_xy_controller name change
AC_WPNav: integrate update_xy_controller name change
Copter: set main loop rate from CPU class

Previously this was determined by the board
AC_WPNav: run loiter and wp nav at 50hz on Pixhawk
Replay: added floating point exception checking

allows NaN errors to be caught in gdb
AP_AHRS: prevent a infinity value
AP_Math: prevent a floating point exception
AP_NavEKF: catch covarience errors and reset filter

this catches covariance values beyond a reasonable limit and resets
the filter is they happen
SITL: added SIM_FLOAT_EXCEPT parameter

this enables checking for floating point exceptions
HAL_SITL: enable use of SIM_FLOAT_EXCEPT parameter
AC_WPNav: update target speed immediately
AC_WPNav: rename some definitions
Copter: remove unused lon_error, lat_error
AP_NavEKF: Improved magnetometer consistency checks

A magnetometer axis that fails the innovation consistency check will cause
all axes not to be used. If this condition continues for 10 seconds, a
magnetometer timeout condition will be declared. When the timeout has
occurred, if it is not a fly forward vehicle, then individual channels
will be used again, but with a reduced weighting.
AP_AHRS: added vehicle class to AHRS

used by EKF to control use of get_fly_forward()
AP_NavEKF: cleanup some build warnings

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
AP_NavEKF: use AHRS vehicle class for sideslip calculation

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
Plane: set AHRS vehicle class