Board Plugin: Add ability to query board capabilities
Board Plugin: Store the board type for each board
Board Plugin: Add helper method to get the IBoardType

Added this to UAVObjectUtilManager as that is the most appropriate
place to map from the numerical board type to the interface.
uavobjectutilmanager.h: formatting fixes
Board Plugin: Fixes for UAVObjectUtilManager

Use IBoardType* instead of IBoardType
Attitude Widget: Query board capabilities

This means that calibration will now calibrate the mags when
appropriate.
Config Gadget: Create new Attitude widget on connect

This triggers querying the board capabilities for calibration
Stm Plugin: Create a new plugin to advertise STM based boards
ModuleSettings: Remove ALTITUDE module no longer started as module

The baro sensor now runs its own task and uses the sensor api
Merge pull request #431 from peabody124/module_settings

ModuleSettings: Remove ALTITUDE module no longer started as module
Fix comments based on review feedback
Merge pull request #428 from peabody124/board_plugin

Board plugin: add mechanism to query board type and capabilities
STM Board: Fix case for plugin name
GCS Log Replay: Fix replay of android log files

The android log files use the android system time which means it
can start at very large numbers, whereas GCS logs start at zero.
To fix this the time of the first timestamp is subtracted out.

Also the times were signed which is inappropriate, so they are
all converted to quint32.

As a side note the way this code is written, it is _extremely_
brittle to ill-formatted logfiles because it doesn't use the
UAVTalk parser or try and maintain sync.  I also removed a
redundant set of checks on the order of timestamps as this is
done during loading and also didn't respond well to the large
timestamps from android.
Merge branch 'gcs_android_replay_fix' into james_development