[telemetry] new periodic telemetry system

- only FW currently, rotorcraft coming soon
- compared to before:
 - no macros (easier to debug)
 - the default channel/device cannot be set for all the messages at the
   same time (it will be possible when we finally replace messages
   macros and define proper C struct for that)
 - the register function only register for a single process (not
   possible to reuse the function for an other process unless you
   explicitely register for it)
[telemetry] adapt rotorcraft to new telemetry system
increase first start interrupt and default device in downlink.h
[nav] change GRAVITY to NAV_GRAVITY to avoid collision
[telemetry] protect telemetry code with #if DOWNLINK

- also get rid of AP_DOWNLINK and FBW_DOWNLINK
- still needs to make it work again (for the only remaining classix in
  the world...)
[telemetry] fix some include and remove unnecessary files
[telemetry] remove unnecessary DOWNLINK_DEVICE define
[telemetry] support for fbw process (only transparent mode)
[telemetry] replace ap_downlink. by new downlink header
Merge remote-tracking branch 'paparazzi/master' into telemetry

Conflicts:
	sw/airborne/firmwares/rotorcraft/autopilot.c
Merge branch 'master' into telemetry

to resolve conflicts and test again before merging back to master

* master:
  [extras] Add CHDK script to work with digital_cam module
  [modules] digital_cam: add DC_POWER_OFF_LED
  [imu] remove old aspirin2 driver
  [modules] ets baro/airspeed: cleanup and default delay of 0.2s
  [conf] add krooz_sd fixedwing example, thx Sergei
  [conf] update krooz_sd examples, thx Sergei
  [boards] update krooz_sd, thx Sergei
  [stm32][pwm] add PWM_SERVO_9
  [modules] baro_amsys: usable for ins_alt_float with USE_BARO_AMSYS
  [rotorcraft] motor_mixing: only lower throttle when hitting both min/max saturations
  [ardrone2] Parrot GPS show sattelite information.
  Added check if autopilot_motors_on do determine if you want to switch to AP_MODE_FAILSAFE
  [spi] update apogee and krooz board files for spi
  [spi] spi for stm32f4
  [rotorcraft] fix MODE_STARTUP
  [krooz] add imu driver for KroozSD board from Sergei
  [imu][aspirin_2_spi] clear naming for mag axes assignment
  [modules] airspeed ets start delay
  [modules] baro ets start delay

Conflicts:
	sw/airborne/firmwares/rotorcraft/autopilot.c
	sw/airborne/modules/sensors/baro_ets.c
[telemetry] add documentation to telemetry system
Merge remote-tracking branch 'paparazzi/master' into telemetry

Conflicts:
	sw/airborne/firmwares/fixedwing/fbw_downlink.h
[sbus] use new telemetry system for sbus
[telemetry] removed now unnecessary DOWNLINK_DEVICE define
[telemetry] fix compilaton of some jsbsim/nps/test targets
Merge remote-tracking branch 'paparazzi/master' into telemetry

Conflicts:
	conf/firmwares/subsystems/fixedwing/autopilot.makefile
	sw/airborne/boards/ardrone/navdata.c
	sw/airborne/boards/lisa_m/baro_ms5611_i2c.c
	sw/airborne/boards/lisa_m/baro_ms5611_spi.c
	sw/airborne/firmwares/fixedwing/ap_downlink.h
	sw/airborne/firmwares/fixedwing/main_ap.c
	sw/airborne/firmwares/rotorcraft/telemetry.h
	sw/airborne/mcu_periph/i2c.c
	sw/airborne/subsystems/ahrs/ahrs_float_cmpl.c
	sw/airborne/subsystems/ahrs/ahrs_float_lkf.c
	sw/airborne/subsystems/datalink/downlink.h
	sw/tools/gen_periodic.ml
[telemetry] add error report
Merge remote-tracking branch 'paparazzi/telemetry' into telemetry

Conflicts:
	conf/firmwares/subsystems/fixedwing/autopilot.makefile
	conf/firmwares/subsystems/rotorcraft/fdm_jsbsim.makefile
Merge branch 'master' into telemetry

* master: (125 commits)
  [abi] define ABI x_SENDER_IDs in abi_sender_ids.h
  [sim] flight gear viz: daytime on all spots on the planet, not only France
  [abi] split abi messages from telemetry messages
  [fix] fix typo in actuators asctec v2
  [baro] fix baro scaling for booz and navgo
  [boards] sim pc: only USE_BARO_BOARD for nps
  [conf] move some airframes to obsolete
  [modules] add baro_sim
  [sim] remove unused sim_baro
  [apogee] fix baro mpl3115 init on apogee
  Update README for recommended gcc-arm-embedded toolchain
  [boards] stm32f4_discovery typo in description
  [boards] roughly correct BOOZ_BARO_SENS
  [modules] baro_ets: BARO_ETS_SCALE
  [modules] baro modules for real sensors only for ap target, not sim
  [conf] remove baro_board.xml module file
  [boards] update stm32f4_discovery
  [lib/ocaml] update leap_seconds
  [mission] fix segmentation fault and add generic mission FP
  [generator] generate arrays of the settings and fp blocks names
  ...

Conflicts:
	sw/airborne/firmwares/fixedwing/ap_downlink.h
	sw/airborne/firmwares/fixedwing/main_ap.c
	sw/airborne/firmwares/rotorcraft/telemetry.h
	sw/airborne/modules/sensors/baro_MS5534A.c