Use / or \ in textplot if the function is increasing or decreasing

Before:

0.99845 |                                      ... ....
        |                                    ..        ..
        |                                   .            .
        |                                  .              .
        |                                 .                .
        |                                .                  .
        |                               .                    .
        | .                            .                      .
5.55112 | -.--------------------------.------------------------.-
        |   .                        .                          .
        |    .                      .
        |     .                    .
        |      .                  .
        |       .                .
        |        .              .
        |         .            .
        |          ..        ..
-0.9984 |            ........
          -10                    0                          10

After:

0.99845 |                                      ... ....
        |                                    ..        ..
        |                                   /            \
        |                                  /              \
        |                                 /                \
        |                                /                  \
        |                               /                    \
        | \                            /                      \
5.55112 | -\--------------------------/------------------------\-
        |   \                        /                          \
        |    \                      /
        |     \                    /
        |      \                  /
        |       \                /
        |        \              /
        |         \            /
        |          ..        ..
-0.9984 |            ........
          -10                    0                          10
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
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.
Change preview to use BytesIO instead of StringIO

This fixes it to work in Python 3. Since BytesIO is available in Python 2.6,
the use of StringIO has been deprecated. See
https://code.google.com/p/sympy/issues/detail?id=3984.

This fixes, in particular, init_printing(use_latex='png') in Python 3.
Don't install isympy as isympy3 in Python 3
Merge branch 'master' into preview_bytesio

Conflicts:
	sympy/interactive/printing.py
Fixed minor dummification issue.

Nothing too big, just looking at the namespaces used for eval rather than the
names of modules passed in.
Remove translation cruft.
Make degree(0) == -oo in the polys

Previously, degree(0) was -1. This makes sense for the dense representation,
because then one can use degree in place of len(f) - 1, but outside of that,
it makes little sense. In particular, the very important formula regarding
degree, deg(f*g) == deg(f) + deg(g), does not hold unless deg(0) == -oo.
Therefore, any code that does arithmetic on a degree and then makes a
comparison against it (like "if degree(f) - 1 > 0"), such as some code in the
Risch algorithm) was previously for 0 but generally correct now.

Fixing this just means being more careful about when you mean degree(f) and
when you mean len(f) - 1 in the dense representation algorithms.  Another
argument for this is that the change in the sparse code required no additional
changes anywhere; apparently the degree does not correspond to any natural
quantity in the sparse representation.
Fix typo
Fix some additional issues caused by degree(0) == -oo