AC_WPNav: use atan2f, make methods const
Mission: make get_prev_nav_cmd_index const
AP_Mission: fixed a bug re-entering AUTO

this fixes a bug found by Marco where we would continue in CRUISE mode
with no waypoint if we re-entered AUTO after a mission reset
Rover: added BRAKING_PERCENT parameter

this allows for reverse throttle to be applied for braking in corners
Copter: add drift throttle assist
Copter: Drift throttle assist range increased

Throttle assist is applied from 213 ~ 787
Deadband and constraint added
Copter: add Drift throttle assist constraints
Rover: make log_bitmask 32 bit

this fixes the log before arm
AntennaTracker: fixed mode set using custom mode
AntennaTracker: fixed pitch slew rate limit
Copter: Only play GPS tone when armed
Copter: Remove 80m altitude limit on RTL
Copter: remove do_land's use of RTL_ALT_MAX
AP_Notify: correct dos formatting
Notify: add arming failure tone
Copter: integrate Notify arming failure when using yaw sticks
Copter: Notify arming failure when using MAVLink
Copter: disambiguate the various causes of "Bad GPS Pos"

I've seen a fair number of user questions where they are confused by
"Bad GPS Pos" on their GCS/not being allowed to arm.  This change splits
the remaining causes of this fault into separate messages.

Hopefully this increases the odds of the user self diagnosing...
AP_GPS: removed GPS_406 driver

this driver was untested and badly structured. If we want to support
the 406 we can revive it and do it properly
AP_GPS: support multiple AP_GPS_Auto drivers

move all static variables into a dynamically allocated structure in
the AUTO driver which gets freed when we have found a GPS type