Add OAuth routes and controller for Bluesky sign-in
Implements /oauth/client-metadata.json, /oauth/login, /oauth/callback,
and /oauth/logout routes with an OAuthController that uses DI to get the
AtprotoOAuthService singleton. Includes login form template, shield API
client plugin for CSRF-aware tests, and functional test coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>