Solving Equations by Factoring