Plane: fixed previous_mode error in geofence 

when we were in MANUAL we would switch back to STABILIZE
AP_NavEKF : Add initial parameter defaults for Copter, Rover and Plane
Copter: spline bug fixes

Next waypoint's location must be passed in even if it's a straight
segment.
mission.get_next_nav_cmd's start_index should be the current command +1
WPNav: clean up spline comments
AC_AttControl: constrain earth frame yaw angle error

This temporarily resolves the wobble we see in Auto when the target
heading is suddenly changed leading to a large yaw angle error
AP_NavEKF : Fixes bug in initial earth magnetic field states

The calculation for these states was not being bias corrected
AC_WPNav: rounder corners for short spline segments
AC_WPNav: check acceleration is non zero
AC_WPNav: advance_spline to use dt
AC_WPNav: spline sets origin vel to zero when no prev segment

Issue caught by Michael Oborne
AC_AttControl:  45deg/sec yaw rate for Auto, RTL
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