didLaunch flag is set at the end of launch sequence

didLaunch was not set at the end of the launch sequence; it was only
set in the onLaunch method, but apparently onLaunch is no longer
called.
"Ping" ADB to check whether we're still connected

On Android Emulator, ADB is disconnected when we toggle Airplane Mode
or mobile Data. However, the problem does not manifest itself when
querying the list of devices via adb devices: the emulator is still
listed. After attempting to ping the emulator via a shell command, the
emulator is no longer listed and a kill-server is necessary to get ADB
back up and running
Partial recovery from a loss of ADB connection caused by turning off the data connection in the emulator
Conditionnally restart UI Automator in case of unexpected exit, mainly to address the use case of disconnecting the netwok on Android Emulator, which triggers a loss of ADB connection, and subsequently UI Automator connection
New method mobile: toggleData on Android
toggleData method on iOS
toggleFlightMode method
Implementing mobile:background command for Android and Selendroid
Support full-reset for selendroid
Merge changes from remote repos
Pulled merge from remote repo
Support full-reset for selendroid
Implementing mobile:background command for Android and Selendroid
Remove debug log
Tidy up spaces according to pull request review
Fixed indentation according to Appium project style guide (2 spaces indent)
Fixed error management in background method
Add an argument to ADB.startApp in order to choose whether to stop the app prior to starting it
Refactored mobile:background method for Android: using ADB.startApp rather than directly issuing am start command to ADB shell, do not return to callback until app is back to foreground
Mimick the launcher start intent for the app when starting it

The Android launcher uses the following settings to start apps:
- MAIN action
- LAUNCHER category
- FLAG_ACTIVITY_NEW_TASK
- FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
Without those settings there were discrepancies between Selendroid and
Android when trying to bring the app back to foreground: it would not
bring back the existing Activity stack but create new activities