Removed unused "tests" variable.  setup() now uses find_packages()
Adopt classifiers to include py3.4
Document where should be changed __version__
Re-use sympy.__doc__ as the long_description kwarg for setup()
Don't use setup_args, use setup() kwargs directly
Remove unused bin/generate_test_list.py
NaN: remove erroneous docstring about inequality raising TypeError

This is an artifact of pull request #7776 and should not have been included.
Merge pull request #8005 from skirpichev/cleanup-setup.py

Cleanup setup.py
Merge pull request #8011 from cbm755/nan7776_errata

NaN: remove erroneous docstring about inequality raising TypeError
added --rerun flag which reruns the tests (with different hashseeds
and such) the specified number of times.  Exits on first failure.
Merge pull request #8017 from pbrady/rerun_tests

Add --rerun flag to bin/test
bounded and unbounded are not antonyms

If we assume finite == !unbounded in assumptions, we
create an alias: finite=False is the same as unbounded=True
and vice versa. We don't want to do that. What we want is
behavior like integer and noninteger:

Dummy(integer=0) is not the same thing as Dummy(noninteger=1).
A noninteger is commutative, complex, hermitian, noninteger,
nonzero, and real while integer=0 is only commutative -- nothing
else is known about it (other than that it is not 0).

/!\ In general, it is much easier to comprehend what one means
by using only true attributes to desccribe it. If something is
not zero but still complex, say nonzero=True instead of zero=False.

So assumptions.py has been modified to make the following true:

```
finite   : 0 < abs(x) < oo
bounded  : 0 <= abs(x) < oo
unbounded : abs(x) == oo
```

The same is also true for zero and nonzero. If nonzero is True you
are talking about a complex number that is not zero. But if zero is
False you are only talking about a commutative object that is not
zero.
Mul._eval_is_rational watches for real and zero
set is_unbounded = True, not is_bounded = False