And in even cases like 
    c + c*f(x) 
factor_terms(c + c*f(x)).as_independent(f(x)) , gives f(x) + 1 , which is fine , and my r2[b] would be c, and my u would be (f(x) + 1)