[MSC2-16] Prevent concurrent executions of StartServiceTask.rollback() and StopServiceTask.execute() and vice versa StartServiceTask.execute() and StopServiceTask.rollback. Otherwise service lifecycle methods may be invoked more than once.
[MSC2-11] RemoveServiceTask depends on StopServiceTask
[MSC2-12][MSC2-15] Notify dependents only if dependency is up.
Stop sending service starting notifications before service is up,
because service may fail to start and it might lead dependents to
go up even dependency failed.