Replace manual signal handling in runDaemon() with kardianos/service for cross-platform service lifecycle (Start/Stop/Run). Add daemon start/stop/restart subcommands using service.Control(), and improve status detection with s.Status() plus socket-check fallback. Custom macOS install logic (dscl, sudoers, pf, plist generation) is unchanged — only the runtime lifecycle is delegated to the library.