Make ModuleSettings reset to default after too many boot failures.
ModulesSettings default on bootfault must initialize UAVO first

Becuase the UAVO wasn't initialized in the case of a safe boot when
the object was reset to the default value a segfault occurred causing
the bootfault recovery to trigger a permanent bootfault loop.
Module settings: Make this readwrite on the flight side

In order to be able to reset this UAVO to the default settings
at boot mode it must be writeable on the flight side.
Initialize ModuleSettings in pios_board instead of modules

Since it is used in the bootfault path we should make sure the init
memory consumption is similar in both.  There is no need to reinit
the setting now in each module.
Merge pull request #245 from peabody124/bootfault_modules

Make ModuleSettings reset to default after too many boot failures.


Previously if the board wasn't booting because of too many modules
there was a boot loop.  This fixes it by falling back to the
default set of modules.
Telemetry: Create interface for telemetry slave tasks and start implementing Logging as one
Android Logging: Port the code from the previous logger activity to the telemetry task
Android Logging: Install the new logging object to the TelemetryTask

However, currently there is no way to start and stop logging.  It is
always logging when connected to a UAV.
Fix: Rename the various tasks
AndroidGCS: Make the TabletInformation task use teh ITelemTask interface
AndroidGCS: Add interface to get the Logger task from the telemetry service
AndroidGCS Logger: Update the UI to show the stats from the logging service
AndroidGCS logger: List the log files in the display screen
AndroidGCS Logger: Create email with log file when it is selected
AndroidGCS: Change message for logging send file
TabletInformation: Force this to use the GPS position

Previously it got the best provider which would sometimes be
the network.  This is unacceptable for what we will use it for.
Temporary patch - add a specific git ID and force the mode to use camera poi
for tablet information
Android Telemetry: Make sure when using UAVTalk relay that we still connect

Previously android required successfully setting the handshakereq value on
GCS Telemetry to connect.  However, when using UAVTalk relay that is all
handled on the main GCS side.  This detects when that appears to be the
case and receives all the object updates anyway.
Android Logging: Move file location to TauLabs
Android Logging: Add the git hash and uavo hash in the header

This was a bit awkward as logging starts as soon as a connection is made.  This
delays writing any logging until FirmwareIAP is updated so the header can be at
the beginning of the file.