Three optimizations and one BUG comment for Bignum#>>.
Three optimizations and one BUG comment for Bignum#>>.

1) avoid temporary mp_init/mp_clear of temp var when self is positive.
2) remove one duplicated early-exit branch
3) combine two branches into one.

This patch doesn't change any results, but just cleans up the algorithm
to make it easier to see where the bug is.

travis-repos/rubinius,travis-repos/rubinius,kachick/rubinius,digitalextremist/rubinius,slawosz/rubinius,benlovell/rubinius,jsyeo/rubinius,Azizou/rubinius,jsyeo/rubinius,ruipserra/rubinius,ruipserra/rubinius,ruipserra/rubinius,digitalextremist/rubinius,slawosz/rubinius,travis-repos/rubinius,digitalextremist/rubinius,sferik/rubinius,chad/rubinius,benlovell/rubinius,pH14/rubinius,dblock/rubinius,digitalextremist/rubinius,sferik/rubinius,dblock/rubinius,chad/rubinius,ruipserra/rubinius,pH14/rubinius,Azizou/rubinius,mlarraz/rubinius,slawosz/rubinius,Wirachmat/rubinius,chad/rubinius,benlovell/rubinius,heftig/rubinius,lgierth/rubinius,Wirachmat/rubinius,sferik/rubinius,heftig/rubinius,benlovell/rubinius,dblock/rubinius,chad/rubinius,chad/rubinius,heftig/rubinius,travis-repos/rubinius,slawosz/rubinius,ngpestelos/rubinius,ruipserra/rubinius,Azizou/rubinius,ngpestelos/rubinius,mlarraz/rubinius,mlarraz/rubinius,dblock/rubinius,heftig/rubinius,heftig/rubinius,jsyeo/rubinius,kachick/rubinius,slawosz/rubinius,Wirachmat/rubinius,pH14/rubinius,benlovell/rubinius,digitalextremist/rubinius,kachick/rubinius,mlarraz/rubinius,ngpestelos/rubinius,chad/rubinius,mlarraz/rubinius,benlovell/rubinius,chad/rubinius,sferik/rubinius,ruipserra/rubinius,chad/rubinius,chad/rubinius,slawosz/rubinius,jemc/rubinius,lgierth/rubinius,Wirachmat/rubinius,pH14/rubinius,pH14/rubinius,travis-repos/rubinius,Wirachmat/rubinius,lgierth/rubinius,pH14/rubinius,sferik/rubinius,digitalextremist/rubinius,Wirachmat/rubinius,mlarraz/rubinius,ngpestelos/rubinius,heftig/rubinius,sferik/rubinius,jemc/rubinius,dblock/rubinius,lgierth/rubinius,jemc/rubinius,chad/rubinius,Azizou/rubinius,lgierth/rubinius,jemc/rubinius,lgierth/rubinius,kachick/rubinius,Azizou/rubinius,ngpestelos/rubinius,ngpestelos/rubinius,dblock/rubinius,jemc/rubinius,jsyeo/rubinius,pH14/rubinius,Wirachmat/rubinius,dblock/rubinius,kachick/rubinius,jemc/rubinius,jemc/rubinius,mlarraz/rubinius,ruipserra/rubinius,kachick/rubinius,kachick/rubinius,sferik/rubinius,jsyeo/rubinius,travis-repos/rubinius,travis-repos/rubinius,kachick/rubinius,jsyeo/rubinius,heftig/rubinius,Azizou/rubinius,benlovell/rubinius,slawosz/rubinius,jsyeo/rubinius,ngpestelos/rubinius,digitalextremist/rubinius,Azizou/rubinius,lgierth/rubinius