Piecewise._evals_subs doesn't evals every pieces.

Expressions are evaluated only if their condition is not False
and evaluation stops when it evaluates a condition to True,

Adds two tests:
    p3 = Piecewise((1, Eq(x, 0)), (1/x, True))
    p4 = Piecewise((1, Eq(x, 0)), (2, 1/x>2))
    assert p3.subs(x, 0.0) == 1
    assert p4.subs(x, 0.0) == 1
Merge pull request #1797 from placasse/piecewise_eval_subs

Piecewise._evals_subs doesn't subs every pieces.

Expressions are evaluated only if their condition is not False
and evaluation stops when it evaluates a condition to True,

Adds two tests:
p3 = Piecewise((1, Eq(x, 0)), (1/x, True))
p4 = Piecewise((1, Eq(x, 0)), (2, 1/x>2))
assert p3.subs(x, 0.0) == 1
assert p4.subs(x, 0.0) == 1