gh-37234: make a category of Dedekind domains, remove code from ring.pyx
This is creating a `DedekindDomains` category and moving the associated
code from `ring.pyx` to the category.
### :memo: Checklist
- [x] The title is concise, informative, and self-explanatory.
- [x] The description explains in detail what this PR is about.
- [ ] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.
URL: https://github.com/sagemath/sage/pull/37234
Reported by: Frédéric Chapoton
Reviewer(s): Travis Scrimshaw