Largish re-work of how dependencies are handled. The "start" and
authorDavin McCall <davmac@davmac.org>
Mon, 11 Jan 2016 19:38:12 +0000 (19:38 +0000)
committerDavin McCall <davmac@davmac.org>
Mon, 11 Jan 2016 19:38:12 +0000 (19:38 +0000)
commitade30f5d62acf2540b0b2c51d826a140c1093893
tree82c120a3e5cfc72669d5a4ff55c1d2eda75b6ae7
parent200cbb5b4f13f23b0098512b6622d1dec349c792
Largish re-work of how dependencies are handled. The "start" and
"dependentStopped" methods were overloaded in unsound ways.

Add require() and release() methods to make an explicit requirement
on a dependency. A require() is added when the service is explictly
started, or when it is a dependency of such a service (directly),
or when it is a dependency of a service which has been required.
src/service.cc
src/service.h