7594: power rules correction so (x**y)**z != x**(y*z)

fixes #7594
- [ ] is this still changing anything and can the power simply be rebuilt recursively in a neater fashion?