Improved pl_true
Added documentation and tests.
give MaxMinBase an evalf routine

Although Or, And, etc... will not have a number as an
argument, Min and Max can. When the operations version
of _eval_evalf is called a call to as_independent is
made. This creates an x (=1) that is assumed to be an
argument of the object so Max(0,y).n() becomes Max(1, 0, y) -> Max(1, y).
To avoid this an evalf routine was added to handle MaxMinBase separately.
simplify test [skip ci]
Merge pull request #7928 from smichr/7233

give MaxMinBase an evalf routine
Merge pull request #7894 from SDB1323/pl_true

Improved pl_true
test_numbers: fix minor typo in a test so both >= and <= are tested

The test did `<=` twice.  Use `>=` for one of them.
Merge pull request #7941 from cbm755/fix_test_numbers_typo

test_numbers: fix minor typo in a test so both >= and <= are tested
Core: inequalities with NaN raise TypeError

NaN is indeterminant; for example the result of `0/0` could be
many values in the sense of limits (`5*x/x`, `x/x`, as `x` to zero).
By this interpretration, `3 < NaN` is not an valid comparison and
we raise the error.

Note this is different from the usual IEEE 754 Floating Point
system which regards all inequalities with NaN as false, using
the logic "3 is not determinably less than NaN".

This is discussed in issue #7773 and in pr #7776.
test_numbers: NaN inequality comparisons raise TypeError
meijerint: workaround NaN's in _check_antecedents

Inequality checks with NaN's used to be false.  Now they raise
TypeError.  This causes failures in meijerint.py's
`_check_antecedents`.  I've kludged it to get the previous behaviour
but its possible those NaN's are a symptom of a real issue.  Left
some comments and FIXME's in there for this.  Also labelled several
of the tests that hit the issue.