offload job restart logic to jobs-api
Currently we explicitly delete the job if it exists, as continuious jobs
with no configuration (Job model) changes will be a noop when patched
via jobs-api.
This has numerous side effects, which from a user/maintainer point of view is a tool outage on every deployment.
With this change we invert the logic, first performing the update and then, in the case of no changes, calling restart.
This leaves jobs-api responsible for figuring out how to converge things, which is in the process of being taught how to do this nicely.
Depends-On: jobs-api!221 (closed)
Depends-On: jobs-api!228 (merged)
Depends-on: !146 (merged) (commit included in this MR, can be rebased)
Bug: T403321