Spline div zero and leash limit fix
AC_WPNav: spline div by zero fix

Also add check for straight line navigation to ensure speed is not
reduced below zero when it hits the leash limit
Also minor formatting changes
AutoTest: fix error reporting for copter AVC mission
Copter: Improve surface tracking dynamics

This little fix will allow much higher sonar_gain without the
oscillating effect it used to bring.
Copter: accept DO_CHANGE_SPEED outside of missions

https://github.com/diydrones/ardupilot/issues/1095
Copter: flag stays landed unless pilot raises throttle
INav: clear historic z-axis position estimate when set_altitude called
Copter: set inav alt to zero when arming
AP_Math: fast_atan2

This is 126us per call vs 199us on the AVR.  it is accurate to about
0.28 degrees

Committed by rmackay9 but contribution is from David Dewey
CPUInfo: add fast_atan2
Copter: use fast_atan2 for bearings to home and next WP
AC_WPNav: use fast_atan2 for bearing calcs
AC_Circle: use fast_atan2 to calc bearing from center

This does not save much time because it's only called at initialisation
autotest: added Ballarat to autotest locations
Plane: release 3.0.4beta2