Hoist constants out of loops.
Add James Fiedler to AUTHORS/aboutus. Welcome to SymPy!
Use _sympify in LatticeOp.__new__
Sort the args of Equivalent

This uses a similar strategy of LatticeOp, storing a set in _argset and only
computing the sorted args if they are requested.  This fixes issue 4081.
Matrices: partial implementation of the Moore-Penrose pseudoinverse.

Added two methods: one to calculate the pseudoinverse, and another to apply it
in the solution of Ax = B.  The pseudoinverse calculation works only for full-
rank matrices and zero matrices; rank-deficient matrices will be more
complicated, possibly requiring a complete symbolic implementation of singular
value decomposition.  Until then, this should work well enough (at least for
me!).

See https://en.wikipedia.org/wiki/Moore-Penrose_pseudoinverse
_eval_simplify for Piecewise and Tuple.
Matrix pinv: switched arbitrary matrix to dummy symbols, added examples.

At Aaron Meurer's suggestion, changed the default arbitrary_matrix of
pinv_solve to contain dummy symbols instead of regular symbols, and added
examples to both pinv and pinv_solve.
Merge branch 'master' into 3741-nargs-as-tuple
Use "== True" in places instead of "== true" or "is true"
Explain why BooleanAtom does not subclass from bool
Explicitly use true/false instead of True/False in And and Or
doctests examples for data
Merge branch 'master' into tensor_numpy
gruntz: nuse = n + 2*ceiling(cf)

cf doesn't have to be an integer, but it needs to be a number,
and we use the ceiling function to convert to an integer.
fixed problems in python3
Add srepr printer for S.true and S.false
Make S.true and S.false print as True and False

The names true and false are still in the namespace. The only thing that's
changed is the printing.
Let simplify recurse through the args.
_eval_simplify for combinatorial and hypergeometric fcts.
_eval_simplify for bessel, combi and log functions.