AC_PosControl: add is_active_z method

Consolidated z-axis timeout checks to save 4bytes of RAM
Added POS_CONTROL_ACTIVE_TIMEOUT_MS to make timeout consistent
AC_PosControl: include vel error when get_stopping_point_z

Pair programmed with Randy
AC_WPNav: replace inav, ahrs pointers with references
Copter: update AC_WPNav instantiation
Copter: increase LOITER_RATE_IMAX to 1000

This allows us to load up the I term with the vehicle's current
acceleration during mode transitions

pair programmed with Randy
AC_AttControl: lean_angle_max accessor fn const
AC_WPNav: add LOIT_JERK parameter

Limit accel output from loiter controller.
Call new pos_control.init_xy_controller when loiter starts
Remove sudden stop when pilot requested acceleration is zero

Pair programmed with Randy
AC_PosControl: lean_angles_to_accel added for smooth initialisation

init_xy_controller also added to capture initialisation all in one place
AC_WPNav: run navigation at 10hz in SITL
AC_PosControl: remove unused _cos_yaw variable

Also removed _sin_yaw, _cos_pitch, _step saving a total of 17bytes of
RAM
Also made get_speed_up, get_speed_down, lean_angles_to_accel functions
const
AC_PosControl: remove reset_I_xy

lean_angles_to_accel is now used to load the position rate I terms based
on vehicle's initial roll and pitch angle
WPNav: add wp_and_spline_init to set speeds an init pos controller
Copter: RTL calls wp_and_spline_init
Copter: AUTO and Guided call wp_and_spline_init
Copter: reduce Circle init twitch by using stopping point
Copter: set pos controller speeds before circle init

This ensures stopping point is calculated correctly
Copter: bug fix to sport roll pitch control
AC_WPNav: Loiter jerk default to 10m/s/s/s

Pair programmed with Randy