[connectionagent] Check for null pointer before debugging

Check pointer value before debugging to avoid null pointer
dereference.
[connectionagent] Rework service tracking

QConnectionAgent has both a hash map and an ordered list for keeping
track of services, and these need to be kept in sync for proper
operation. Since there isn't much benefit from the hash -- for the
most part, its keys are iterated and all related values accessed --
reworked the code so that there is only one container, an ordered list
that contains service paths and pointers to service objects.
Merge branch 'telemetry-fixes' of github.com:hmallat/connectionagent into hmallat-telemetry-fixes

Conflicts:
	connd/qconnectionagent.cpp
Merge branch 'hmallat-telemetry-fixes'