Piecewise: check if input is already a ExprCondPair

Should fix `S(srepr(p)) == p` where `p` is a Piecewise.

If the Piecewise() gets an existing ExprCondPair it should not try
to deference it like a Tuple to build a new ExprCondPair.  Rather
it should just use the ExprCondPair.

But help!  It doesn't work...
Piecewise: ensure input is a ExprCondPair
Merge pull request #8465 from cbm755/pw_S_srepr

Piecewise: input should work whether its tuple or ExprCondPair