[WIP] Rewriting the Univariate Solver

This PR aims to rewrite a cleaner and robust univariate equation solver.
- [ ] Univariate
    - [x] polynomial
    - [x] rational
    - [ ] trigonometric
    - [ ] functions with exp and log
- [ ] Multivariate
> I'm corect: this is all about eqs (poly1(x))**Rational==poly2(x)

not necessarily, it equations like `sqrt(x + sqrt(x + 1)) + x` and `sqrt(x) + sqrt(x + 3) + x` are also expected to be covered. They are not of the form `(poly(x))**Rational`. Informally any equation in which at least one variable expression is stuck inside a radical.