M101 - abort mission functionality

added the following
-abort_mission
-instrument_abort_sequence

modified yaml mission file -instrument to -missionThread
Better logging for R2 QC Processing Failures
Merge pull request #2054 from lukecampbell/qc-patch

Better logging for R2 QC Processing Failures
removes elasticpy
Merge pull request #2056 from brianmckenna/remove_elasticpy

OOIION-1803 - Remove elasticpy from dependencies
remove unused create_command parameter in _instruments_execute_agent method
more graceful platform agent command dispatch involving child instruments

https://confluence.oceanobservatories.org/display/CIDev/Platform+Agent+adjustments+for+Mission+Execution
more flexible shutdown logic in test_platform_agent_with_rsn; and fix broken test_capabilities  (due to missing param 'mission' in scheme)
Updates ion-functions
Adds skip test for SGS interfacing uplaod code in PYCC mode
Deprecates outdated qc test in DAMS
Merge pull request #2062 from lukecampbell/pyccfixes

Skips for PYCC mode
Merge pull request #2058 from cwingard/ionfunc

CIDEVMI-1178 Updates ion-functions through pull request 168
Merge pull request #2057 from carueda/pa_child_state_flex

More flexible platform command dispatch involving child instruments
Fixes test_sparse_values on pycc

- The test publishes to a dataset 4 times but the monitor only listened
  to three of them before making assertions causing it to sporadically
  fail. The solution, here, was to add another wait at the third publish.
Merge pull request #2063 from lukecampbell/pyccfixes

Fixes test_sparse_values on pycc
Merge pull request #2051 from Bobfrat/mission-executive

M101 - abort mission functionality