[UIMA-3969] add tests for all kinds of types.  Changed the serialization for features and arrays to avoid copying.  Changes include handling "null" vs null string values.  Change the format for JSON serialization for array FS (when ById) to type-name : [array values] (eliminating extra { _elements : [array values] } wrapper).  Indicate feature slots whose values are arrays that are being serialized inline (because multiple-references-allowed is false), to skip the feature:value is the value is null, following the JSON convention to omit serializing fields having null values.

git-svn-id: https://svn.apache.org/repos/asf/uima/uimaj/trunk@1618052 13f79535-47bb-0310-9956-ffa450edef68