What's new
- Background update check — the Bookends menu now silently checks for updates when opened (once per hour). When a new version is available, the menu item shows "Update available: vX.Y.Z" instead of "Check for updates".
Fixes
- Bar reorder dialog no longer shows two Cancel buttons
- Preset menu refreshes immediately after saving, deleting, or renaming a preset
Under the hood
- Major code simplification: extracted shared helpers, deduplicated logic across modules, and split the updater into its own file for easier maintenance