Rover: much simpler SPEED_TURN_GAIN implementation

as soon as we hit the SPEED_TURN_DIST we lower target speed to the
specified gain
Plane: prepare for release of 3.0.3
AC_WPNav: bug fix for loiter init in Hybrid

AC_PosControl::init_xy_controller() has been added to PosControl and is
called by init_loiter_target.
Hybrid is currently using set_loiter_target function to init the loiter
controller. So we have to call init_xy_controller() by set_loiter_target
function.
What happens otherwise?
In AC_PosControl::update_xy_controller, we update "now" with
now = hal.scheduler->millis();
and, as _last_update_xy_ms has not been updated previously by
init_xy_controller(), we just call init_xy_controller().
So, _dt_xy  will be negative and used anyways in all the functions and
PID called by update_xy_controller.
That will avoid at least _accel_target.x/y to be set to 0 but I'm not
sure for the high values, probably an I_term that is not reset and
reached very high value.
Or maybe a cast error somewhere... no clue at all
AC_WPNav: set_loiter_target uses set_xy_target

Loiter is only a horizontal position controller so it should not set the
z-axis position.
Moved pos_control.set_speed and accel functions so order matches
init_loiter_targets function order
Copter: remove setting Z-axis target in Hybrid

This workaround is no longer required because AC_WPNav's
set_loiter_target call no longer sets the position controller's z-axis
target
AC_WPNav: rename set_loiter_target to init_loiter_target
Copter: integrate init_loiter_target name change
HAL_PX4: fixed auto-flow control

the 6 bytes written to break the radio out of bootloader broke
auto flowcontrol detection
Plane: set version to 3.0.4beta
Frame_params: Added Iris with Front Mount Go Pro
GPS: correct NAVFILTER parameter description

These corrected values match the GPS_Engine_Setting enum in GPS.h
Thanks to Adolfo R for noticing the issue and providing the fix
APM_OBC: adjusted docs for FS_HB_PIN

thanks to Warren for the question
AP_Common: moved map_baudrate() into AP_Common

this version supports a much wider range of baudrates
GCS_MAVLink: moved main update() routine into GCS_Common.cpp

this fixes a common timeout error with loading large missions, and
means less per-vehicle code
Plane: changed baudrate parameters to 16 bit
Plane: update baud rate parameter descriptions
Plane: updates for new GCS_MAVLink API
Copter: change baudrates parameters to 16 bit
Copter: update baud rate parameter descriptions
Copter: updates for new GCS_MAVLink API