chore(algebra/module/prod): add missing instances (#6055)
This adds the following instances for `prod`:
* `is_scalar_tower`
* `smul_comm_class`
* `mul_action`
* `distrib_mul_action`
It also renames the type variables to match the usual convention for modules