Updated geo_utils.py to calculate midpoints
Updated GeoUtils to calculate midpoint
_augment_dict: just log warning if new value is different  (I've seen lots of
 such warnings when the value was the same as the previous so decided to add
 this condition)
starting launch test with a multi-level platform hierarchy and instruments
(not yet fully working)
comment about successful test if using a smaller network
write out generated agent configuration only for the complete network; other
adjustments.
comment about the generated files for debugging purposes
Updated GeoUtils to calculate midpoint
merge upstream/master
add ability to create multiple instruments for the launch tests --
successfully tested with the 2 currently available sbe simulators on sbe-37
.simulator.oceanobservatories.org
merge upstream/master
use a single PlatformAgentConfigurationBuilder and a single InstrumentAgentConfigurationBuilder
merge upstream/master
call _update_cached_predicates on the agent config builders to avoid
exception upon new caching mechanism added.  Configuration generation is
taken half the time and could probably be improved if the new mechanism is
used ain a more appropriate way.
skip test_platform_hierarchy_with_some_instruments for purposes of the
buildbot. This test runs fine locally with a receive timeout 180 but I'm not
sure what the receive timeout is in place there. Note that the recent
predicate caching in the agent config builder has improved the execution time
 but it might still be considerable.
merge upstream/master
generate config only for the complete hierarchy structure
merge upstream/master
just-in-time configuration building and timing info added to cache function
_augment_dict: if new value == old value, still log something