Move rcall from Expr to Basic

This lets it work on non Expr objects, such as booleans, like And(Q.real, 
Q.positive).