appview: add theme drop-down persisted in database
Fixes #364
Allows users to manually change theme, useful for cases like
LibreWolf where it defaults to light-mode irrespective of system
settings (with resistFingerprinting enabled).
Stores theme as 'light', 'dark', or 'auto' in the database, and
dynamically adds/removes the 'dark' class from the HTML.
Signed-off-by: TheBananaPancake <did:plc:3ywraszv5eqhnlvzumwju5fa>