Piecewise._eval_subs doesn't use solve.

Also, the checksol is moved to _eval_cond.