AP_Notify: avoid suspend_timer_procs() by using atomic updates in ToshibaLED_PX4
AP_InertialSensor: use lockless structures in MPU9250 driver

this avoids suspending timers when transferring data between main
thread and SPI read thread
HAL_Linux: use a semaphore in suspend_timer_procs()

this is the start of multi-core aware code
Copter: show firmware version on param fetch

fixes pull #1320

thanks Arthur!
Rover: show firmware version on param list
Rover: remove unused variable
AC_AttControl: div-by-zero check for bf-to-ef conversion
AC_AttControlHeli: integrate div-by-zero check for bf-to-ef conversion
Copter: remove get_angle_targets_for_reporting fn

this saves a tiny amount of time by removing the memory copy of a
Vector3f
AC_AttControl: remove debug message
AC_AttControl: bug fix for ef target during acro
Copter: add pitch axis flipping

Added Pitch axis flipping. You must be pushing forward or back 3° to make it flip in Pitch axis or it will flip in the default roll axis.
Added some extra throttle control to maintain altitude
removed the CH7 ability to exit Flip mode. It will exit only if completing flip or user aborts with control sticks.
Copter: flip minor comments and formatting
Copter: remove unused flip_stop
Copter: ensure motors don't stop during flip
Plane: added FBWA_TDRAG_CHAN parameter

this allows for testing taildragger takeoffs in FBWA mode
AP_NavEKF: make use_compass() public
AP_AHRS: use EKF use_compass() if EKF enabled

this allows magfailed status to show on console via SYS_STATUS health
bits
Plane: reset steering integrator on mode change and when not moving

this prevents an old integrator from causing problems on takeoff
AP_Terrain: fetch more terrain data around waypoints

this ensures we have data for a wide region (1km) around each waypoint