fix: address Phase 5 code review feedback
Remove stale #[allow(dead_code)] annotations from items now used in production:
- TokenRequestForm fields: code, redirect_uri, client_id, code_verifier (used in handle_authorization_code)
- TokenResponse struct (used to construct response)
- OAuthTokenError::with_nonce method (used in handle_authorization_code)
- AuthCodeRow struct (used as consume_authorization_code return type)
- consume_authorization_code function (called from oauth_token.rs)
- store_oauth_refresh_token function (called from oauth_token.rs)
- DpopTokenEndpointError enum and validate_dpop_for_token_endpoint function (used in oauth_token.rs)
- issue_nonce, validate_and_consume_nonce, cleanup_expired_nonces functions (called from oauth_token.rs)
Keep #[allow(dead_code)] on genuinely unused items:
- refresh_token field on TokenRequestForm (used in Phase 6)
- MissingHeader variant (matched but never constructed)
- code_challenge_method field (stored but never read)
Minor fixes:
- Replace inline account insertion with insert_test_account helper in consume_authorization_code_returns_none_for_expired_code test
- Add RFC 7638 comment to dpop_thumbprint test helper noting lexicographic key order requirement
- Replace Arc wrapper with .clone() in consumed_code_returns_invalid_grant test
- Add AC comment annotations to Phase 4 tests (AC5.1, AC5.2, AC5.3, AC5.4) for consistency