This avoids having to pass the target separately into the service
constructor. It is also consistent with the broad conception of
configuration we use elsewhere (such as the interactive field), which
includes any modification of default behavior based on user input. In
this case the target is literally coming from the configuration file
so it is reasonable that we should be able to access it through the
configuration object.
This is also motivated by simplifying the base class API's before
stabilizing them (#775).
Based #973.This avoids having to pass the target separately into the service constructor. It is also consistent with the broad conception of configuration we use elsewhere (such as the
interactive
field), which includes any modification of default behavior based on user input. In this case thetarget
is literally coming from the configuration file so it is reasonable that we should be able to access it through the configuration object.This is also motivated by simplifying the base class API's before stabilizing them (#775).