gh-35186: Various improvements to Weyl character rings
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes #1234" use "Introduce new method to
calculate 1+1"
-->
### 📚 Description
We provide a number of improvements to the Weyl character ring:
1. We make it know that it is commutative (along with its ambient ring).
2. We speedup the `_demazure_helper` method by only doing operations
based upon the support of the simple roots.
```
sage: F = FusionRing(['B',10], 2, base_ring=QQ)
sage: dd = {(1,0,0,1,0,0,0,0,0,0): 1}
sage: %time X = F._demazure_helper(dd)
CPU times: user 3.1 s, sys: 12 ms, total: 3.11 s
Wall time: 3.11 s
```
Previously took `~6s`.
3. We don't set the `FusionRing` as a subobject of the `WeightRing`.
<!-- Describe your changes here in detail -->
<!-- Why is this change required? What problem does it solve? -->
<!-- If it resolves an open issue, please link to the issue here. For
example "Closes #1337" -->
### 📝 Checklist
<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
- [x] I have made sure that the title is self-explanatory and the
description concisely explains the PR.
- [ ] I have linked an issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.
### ⌛ Dependencies
<!-- List all open pull requests that this PR logically depends on -->
<!--
- #xyz: short description why this is a dependency
- #abc: ...
-->
URL: https://github.com/sagemath/sage/pull/35186
Reported by: Travis Scrimshaw
Reviewer(s): Dima Pasechnik