trac #17155: add "sage -installed" and "sage -pip" commands
trac #17155: reviewer comments

- change tabs to spaces
- use [ -x pip ] to detect pip installation
- deprecate sage-list-standard, sage-list-optional,
  sage-list-experimental scripts
- some simplifications in src/bin/sage-list-packages
trac #17155: nicer deprecation
Fix rational reconstruction
trac #17155: reviewer comments
Typo
initial fix by adding extra condition to check
cleaned up the conditions being checked, added test for error
made the function recursive and this seems to solve the problem : TODO remove #print statements
added the problem tests, deleted the #print statements, fixed a problem by returning None
change to .to_transposition_sequence() so that the standard marked tableau is used
Merge branch 'develop' into public/combinat/zabrocki/fixstrongtableaux/17252
fixed typos
Remove unused import of Integer
Trac #17180: Move and fix rational reconstruction

`rational_reconstruction` modifies its input:
{{{
sage: a = -1
sage: a.rational_reconstruction(5)
-1
sage: a
4
}}}

Move the implementation of rational reconstruction to
`src/sage/libs/gmp/rational_reconstruction.pyx` as part of the effort to
clean up `gmp.pxi`.

URL: http://trac.sagemath.org/17180
Reported by: jdemeyer
Ticket author(s): Jeroen Demeyer
Reviewer(s): Vincent Delecroix
Trac #17252: bug fix in StrongTableaux.marked_CST_to_transposition_sequence

Anne Schilling pointed out the following error in the algorithm to
convert a strong marked column strict tableau to a sequence of
transpositions:
{{{
sage: StrongTableaux.marked_CST_to_transposition_sequence([[-1,-2,-2,-2,
-2],[-2,2],[2]],3)
[[4, 5], [3, 4], [2, 4], [2, 3], [1, 2], [0, 1]]
}}}
however the answer should be `[[4,5],[3,4],[2,3],[1,2],[-1,0],[0,1]]`
and the problem arises because it was never clear in the algorithm for
converting a marked column strict tableau into a sequence of
transpositions what conditions I need to check to make sure I was
applying a valid transposition.  In fact, there was a comment in the
code that indicated my worry that one might be able to apply two
transpositions and reduce the length by 1.

This is exactly what happens in this case because if you apply the
sequence of transpositions t_{2,4} on t_{3,4} t_{4,5} T then in fact
t_{2,4} does reduce the length of shape of the tableau by 1, but there
are no cells of content 2 and 3 in the tableau t_{3,4} t_{4,5} T.

The fix was to implement the method `to_transposition_sequence`
recursively by checking that the result of applying `t_{i,j}` can
reduced to the empty core.

URL: http://trac.sagemath.org/17252
Reported by: zabrocki
Ticket author(s): Mike Zabrocki
Reviewer(s): Anne Schilling
Trac #17155: add "sage -installed" and "sage -pip" commands

Add two commands to sage:
 - `sage -installed` to get the list of installed packages
 - `sage -pip` to run the Python package manager

URL: http://trac.sagemath.org/17155
Reported by: vdelecroix
Ticket author(s): Vincent Delecroix
Reviewer(s): Jeroen Demeyer