Add support for SECG names for NIST P-192 and P-256 ECC curves.

SECG names of the two curve specs are "secp192r1" and "secp256r1".
OpenSSL doesn't support these names (see crypto/ec/ec_curve.c) because:
* "SECG secp192r1 is the same as X9.62 prime192v1 and hence omitted"
* "SECG secp256r1 is the same as X9.62 prime256v1 and hence omitted"

The BouncyCastle-based EC provider, which was the default on older
Android platforms, supported both the SECG (secp...) and ANSI X9.62
(prime...) names for these curves.

This change also makes java.security.KeyPairGeneratorTest assert that
both the SECG and the ANSI X9.62 names of the two curves are
supported by EC* KeyPairGenerators of all the registered Providers.

Change-Id: I9531f05020971fd47afac2367021e3e3e6345d50
Add test for CertPath

Test X509CertificateFactory#GenerateCertPath is functioning
correctly. To be fleshed out in future tests.

Change-Id: I48f31919f5a5c283bc77247edf830ca1ba8dcca5
CertPath: output PkiPath in correct order

All PkiPath encodings were coming out backwards from the
specification since the PkiPath is encoded in the opposite sequence of
the documented API convention in code.

Clean up the code to match current convention.

Remove encoding optimization that could cause a race since the cached
encoding fields are not final and the supplied encoding may not match
re-encoding.

Change-Id: I17db0e52272a1adf47766c8bbd33b63da454c1cf
Merge "Add test for CertPath"
Merge "Add support for SECG names for NIST P-192 and P-256 ECC curves."
Switch to using icu4c 50's TimeZoneNames API.

This takes us down from ~330ms/locale on prime to ~70ms/locale.

This also fixes a bug in DateFormatSymbols.getZoneStrings and adds a test
so we don't regress.

Change-Id: I13663a659666c0a7d87a299235b75fa4e9fef69d
Merge "CertPath: output PkiPath in correct order"
Merge "Switch to using icu4c 50's TimeZoneNames API."
Fix test failures caused by the icu4c 50 upgrade.

Change-Id: I540f390b142d578d5d18aed25f4d851416c9d1eb
Merge "Fix test failures caused by the icu4c 50 upgrade."
port code to 64-bit architectures

This involved changing all the ints which held pointers to longs, or
at least the ones I could find with the help of the Java and C/C++
compilers.  I've only tested a small subset of this code so far (just
the NIO stuff), so there's a good chance I missed something somewhere.