The new "country access" implementation replaces the old
implementation. Middleware and tests have been updated
accordingly, but deprecated models are preserved
for backwards compatibility.
Add history table for course access rule changes.
Provide test utility for simulating restricted access.
Provide `redirect_if_blocked` method for integration with other
parts of the system (will be used for blocking enrollment).
Add info-level logging explaining when and why users are blocked.