Breaking changes:
* ✨ Split worker into a worker for just updating duty officers and a worker for just updating calendars.
* ✨ Store images in the database instead of on disk.
Important changes:
* 🎨 Introduce not null constraint
* 🎨 Improve cascading deletes for database operations
* 📌 Upgrade SQLAlchemy to 2.0+
Test improvements:
* ✨ Introduce LDAP for tests
* ✨ Make MyPy strict
* ✅ Implement LDAP & Plugin loading tests
* 🎨 Misc improvements
* 🎨 Change initial migration
* 🎨 Update coverage report to exclude script
* 🎨 Fixes for Docker compose
* 💚 Make pre-commit happy
* 📌 Upgrade pytest version to 7.4+