_eval_simplify for Piecewise and Tuple.
Let simplify recurse through the args.
_eval_simplify for combinatorial and hypergeometric fcts.
_eval_simplify for bessel, combi and log functions.
_eval_simplify for Product and Sum.
Fix expand_log for negative terms.

If we know a term is negative, we can extract the minus sign and
treat the rest as positive.
Stop simplify from recursing through exponentials.
_eval_simplify for sign.
Fix expand_log for negative terms again.
Merge branch 'master' into piecewise
Replace exp with ExpBase.
Merge pull request #2573 from jrioux/piecewise

_eval_simplify for Piecewise and Tuple.