udev/ata_id: use initalization instead of explicit zeroing
systemctl: ellipsize job list only when necessary, highlight running

I was debugging systemd waiting on a missing disk, and noticed
that the job listing could use some polishing. Jobs that are
actually running are highlighted, so it's easier to see what
very actually waiting for.

Also, the needed widths are precalculated, to use available columns
more ecomically.
shell-completion: replace printf with echo

It is faster to use a bash built-in, then to invoke an external
program. The problem of unit names starting with a dash is solved
by prepending a space. Spaces are ignored anyway.

For zsh, replace echo "$unit", which is vulnerable to dashes,
with echo " $unit".
shell-completion: show failed units as candidates for start

Also show disabled units as candidates for reenable,
since it works and one may want to do enable-or-reenable
in one line.