tray: add status header and always emit menu booleans
Adds a macOS-style plain-text status header at the top of the tray
menu. One pure helper `_compute_header_label(status, sync_status,
pause_remaining)` drives both the new header and the existing
`_status_item` inside the status submenu, so the two never diverge.
Uses em dash (U+2014) matching existing user-facing strings in
this file.
Fixes a post-pause resume-visibility bug: `MenuItem.get_properties()`
now always emits `enabled` and `visible` as boolean Variants rather
than only when False. Some SNI hosts (e.g. GNOME AppIndicator)
cache these values and do not re-default to True when the key is
absent, so after pause→resume the resume item would stay hidden
despite `LayoutUpdated`. Always emitting makes the spec-correct
boolean state visible on every layout re-read.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>