javax.security.auth.Subject: port this class from jdk8u60

- Changes to serialization/deserialization: be more tolerant about
deserializing objects: tolerate null values and lists other than
linked lists. This is tricky to test, as such objects cannot
be created in the current implementation. Serialization, is
otherwise tested in SubjectTest. Added tests to document behaviour
of null values.
- Throw NullPointerException immediately in the SecureSet set
implementation used to store principals and credentials.
- Cosmetic changes like use of @code instead of <code> tags.

Bug: 29631070
Test: vogar SubjectTest
Change-Id: I5cb007db2f44e78ea668444372810f6355fab5ba
2 files changed