> Why do you change the variable in the Poly?

Because we have to. It needs to be a dummy variable like
any variable we summ or integrate over. We want to sum 
over functions of the roots w_i of a polynomial. The function
has only one input parameter w, the root. But it can depend 
on the generator x of the polynomial like it's the case
for a partial fraction which is a rational function in x.

Hence the whole rootsum object if indeed a function of x.

Now we may want to change the variable x, substitute in values 
for x and so on. But we NEVER want to change the polynomial
by these operations.

My conclusion is that therefore it has to be a dummy ...

> do we need Lambda?

Maybe not. But it provides an easy way for retrieving the
symbol "a" used for representing the root in the expression
given (Lambda body). Otherwise we would have to carry around
this information manually.