Make satisfiable() work with arbitrary expressions, not just Symbols

This is in the same spirit as https://github.com/sympy/sympy/pull/2451.

This also should make satisfiable() more deterministic by sorting the symbols.
Fix spelling error in function name
Make bin/ask_update.py grab the right sympy
New assumptions: zero is even

This also lets it deduce that zero is an integer.
Use a context manager in ask_update.py
Sort the keys in the ask_generated.py dictionary

This will make the diffs much less drastic when new facts are added.
test_plot.py: Cleanup temporary files after test completion
4023: better handling of exponents in nfloat

When nfloat encountered RootOf instances the method
it used to leave the exponents alone didn't work because
RootOf instances don't allow non-univariate expression.
So RootOf(x**dummy_1 + x**dummy_2, 0) fails. The handling
of exponents is now handled in a more straightforward
manner and a test expression was added to solve's suite.
handle RootOf on their own in nfloat
Merge branch 'master' into satisfiable_expr

Conflicts:
	sympy/logic/tests/test_inference.py
Don't print a space after ¬ in the pprint of Not
4046: raise error if abs is not removed in solve

A better alternative is to have a method to rewrite Abs
as Piecewise which could then be solved. (see issue 4046)
Merge pull request #2540 from smichr/4046

solve with Abs and checksol issues
Merge pull request #2549 from asmeurer/Not_pprint

Don't print a space after ¬ in the pprint of Not
Merge pull request #2539 from smichr/4023

4023: better handling of exponents in nfloat
Merge pull request #2517 from amitsaha/cleanup_temp

test_plot.py: Cleanup temporary files after test completion
Add Amit Saha to AUTHORS/aboutus. Welcome to SymPy!
Merge pull request #2550 from smichr/auth

Add Amit Saha to AUTHORS/aboutus. Welcome to SymPy!
Always generate ask_generated.py with set([]) notation

In Python 3, repr(set) uses {} notation, which is not compatible with Python
2.6.

This also sorts the entries of the sets, so that running ask_update.py without
any changes should always result in the exact same ask_generated.py.
Merge branch 'master' into satisfiable_expr