Added the ability to set the digital relays on the APM
Merge branch 'master' into enable_set_relay
Updated SLUGS message definitions to work with current version.
pymavlink: cope with bad data at and of log
pymavlink: fixed mode mapping for copter/rover
pymavlink: fixed waypoint saving

last indentation fix broke the logic
pymavlink: fixed mavflighttime for DF logs
pymavlink: calculate distance as well as time in mavflighttime.py
Allow compiling on Visual Studio 2012 and earlier.
common.xml: added AHRS health status bit

this allows the AHRS subsystem to report its health. It would report
as unhealthy if (for example) EKF diverged and DCM tookover while it
recovered
MAVUtil: Recognize Tri, Hexa, Octa and Tradheli as using the ACM Mode Map

Without this change, MAVProxy et al doesn't work for copter frame types
other than quad.  This manifests as an inability to change modes and an
exception whenever one types an unrecognized command (as MAVProxy tries
to map them to mode commands by default)

To have true coverage of the ACM codebase, MAV_TYPE_ROCKET would need to
be added to the list also as ACM uses this for FRAME_SINGLE (MAVLink not
providing an actual Single class). I don't want to be the one to extend
that hackery in to generic MAVLink code though!

Types that are copters but aren't implemented by ArduCopter (e.g.
COAXIAL) are similarly left out of this PR.
pymavlink: fixed SERIAL_CONTROL support for new python array semantics
pymavlink: workaround a kernel baudrate set bug

sometimes some Linux kernels don't set the baudrate correctly
pymavlink: closer to supporting python3
MAVExtra: Add a version of mag_field that works for Dataflash messages
MAVExtra: Teach distance_home to deal with DF GPS messages

The distance_two function that underlies distance_home already
knows how to deal with APM DF GPS messages, this patch just
has to teach distance_home about the Status field replacing
fix_type to triage the data
mavflightmodes: Print a summary of time spent in each mode.
pymavlink: extract separate missions in mavextract
pymavlink: raise version for release
pymavlink: added gains to demix functions