OpenJDK 11: Merging in java.math.BigInteger

This is part of merging upstream changes from OpenJDK 11.28. This CL
updates java.math.BigInteger; and adds unit tests.

This update adds new APIs:

 1) Two constructors
 ** public BigInteger(byte[], int, int)
 ** public BigInteger(int, byte[], int, int)

 2) Two new methods
 ** public BigInteger sqrt()
 ** public BigInteger[] sqrtAndRemainder()

 3) New constant
 ** public static final BigInteger TWO

Bug: 200171748
Test: atest CtsLibcoreOjTestCases:test.java.math.BigInteger.{\
            BigIntegerTest,CompareToTests,ModPow,OperatorNpeTests,\
            PrimeTest,PrimitiveConversionTests,ProbablePrime,\
            StringConstructor,TestValueExact,UnicodeConstructor}
Change-Id: I3afc5638b5b424f06d70e2880f053d95feea3768
14 files changed