add support for algebraic functions in minpoly
fix test failures
add tests for minpoly over fraction fields
Fix bug in _choose_factor
minpoly: check that the variable is not contained in the ground domain
minpoly: fix test failures
minpoly: add support for algebraic extensions of QQ
minpoly: update documentation

also rename _minpoly_op_algebraic_number to _minpoly_op_algebraic_element
and update error messages
minpoly: add more tests
minpoly: fix doctest error
Improve subs for Derivative.

Perform substitutions if derivative variables are in a different, but
equivalent order and perform substitutions for subderivatives.
Add additional tests for Derivative subs method.
Report test name in case of runtest failure; add missing print_function.

Make runtests.py report the name of a test if an exception is thrown
before it outputs the test name normally. This makes sure that the
name of a test is printed even in the face of runtest machinery failure.

Added a print_function import from __future__ to test_codegen, which
would make tests fail all over the place when --enhance-asserts was
active.
Merge remote-tracking branch 'sympy/master' into derivsubs

Conflicts:
	sympy/core/function.py
Updating classes to use __new__ instead of init
Imlement and UnXFAIL Wester test_H24
Implement and UnXFAIL Wester test_J2
Fix and UnXFAIL Wester test_H2
test for issue 2073
XFAIL in gruntz for 2073