fix(agent): be more intelligent about starting services

* Only write out a unit file if it does not exist
* Only attempt to start the unit if the state is not active