Finish fixing Zygote descriptor leakage problem

In order to prevent Zygote descriptors from leaking into the child
environment, they should be closed by the forked-off child process
before the child switches to the application UID.  These changes close
the descriptors via dup2(), substituting a descriptor open to
/dev/null in their place; this allows the Zygote Java code to close
the FileDescriptor objects cleanly.

This is a multi-project change: dalvik, art, libcore, frameworks/base,
and external/sepolicy are affected.  The CLs need to be approved
together, lest the build break or the software fail to boot.

Bug: 12114500
Change-Id: I8ea69de7b1cfbd811977a5629eb0af665f6dd66a
Delete unused test resources.

These resources were used only by DalvikExecTest.

Change-Id: Icb063fcf96593eeb3c6d9392214b3bc67305af53
Late binding: support children of Signature

The way Signature is a class of SignatureSpi allows you to register a
provider that returns a direct child of Signature. Support that by
checking if it's a subclass before trying to wrap it in SignatureImpl.

Bug: 12971079
Change-Id: I76b03f0962fe1b6ae95f205588c17d54b4bf504c
Merge "Late binding: support children of Signature"
Merge "Finish fixing Zygote descriptor leakage problem"
Late binding: support NullCipher

NullCipher is a special case that needs to never reset its spiImpl

Bug: 12971024
Change-Id: I0e1e4a6525808959e068810c3a8c239baacf8a95
Merge "Late binding: support NullCipher"
Merge "Delete unused test resources."
Fix compatibility issues in XmlPullParserFactory.

- We should set features on a parser only if the feature
  value is true. I.e, we guarantee that we'll never call
  XmlPullParser.setFeature(..., false).

- In change 0363556bad8930a, we didn't consider the fact
  that apps could extend XmlPullParserFactory and modify
  protected fields to change the parser / serializer that's
  instantiated. I've reinstated this feature, despite the
  fact that it's a particularly pointless feature on a
  more-or-less pointless public API. Apps can and should
  instantiate their own parser instances directly instead
  of going through this factory.

bug: 12956724

Change-Id: I793eba335b5385eb641e023b3613bba4515a85bf
Merge "Fix compatibility issues in XmlPullParserFactory."
Remove old fork-and-specialize API

As promised, this is the cleanup patch-set which removes the
old native "fork and specialize" API, which has been replaced
by a slightly-enhanced one which can close the Zygote socket
descriptors in the Zygote child.

Change-Id: Icaeab730bee8638354dc664524e4118cdd946d2f
Merge "Remove old fork-and-specialize API"
Merge branch 'master' of https://android.googlesource.com/platform/libcore into HEAD