Improve plist_caveats and brew-services

1. Use `brew services` to replace `launchctl` in plist_caveats.
2. Minor bug fix for brew-services.

Note there's still a bug in brew-services, see https://github.com/Homebrew/homebrew/issues/30628.
Then it will look like this, if that's what you want.
```ruby
if f.plist_startup
  if Kernel.system "/bin/launchctl list #{plist_domain} &>/dev/null"
    s << "To reload #{f.name} after an upgrade:"
    s << "    sudo launchctl unload #{plist_link}"
    s << "    sudo cp -fv #{f.opt_prefix}/*.plist #{destination}"
    s << "    sudo launchctl load #{plist_link}"
  else
    s << "To load #{f.name}:"
    s << "    launchctl load #{plist_link}"
  end
else
  s << "To reload #{f.name} after an upgrade:"
  s << "    launchctl unload #{plist_link}"
  s << "    launchctl load #{plist_link}"
end
```