[dml-compiler] Added JsonElement to the Builtin Value Types

  * Also using Gson 2.2.4 (bug fix release)
  * See #158
[core-api] Externalization.externalizeObject now supports externalizing JsonElements

  * This allows Backends which rely on externalizeObject to persist data (such
    as Infinispan and OGM)
  * See #158
[jvstm-ojb] Added Support for the new JsonElement Value Type

  * See #158
[core-api] Added Utility Class to convert to/from JsonElements
[core-api] Added Tests for JsonConverter
[dml-code-generator] Complex Value Types now externalize to Json
[core-api] JsonConverter is now null-aware
[jvstm-ojb] Code Generator now uses ValueTypeSerializer to externalize Value Types
[jvstm-ojb] OJB Internalizers now use the ValueTypeSerializer to internalize value types
[jvstm-ojb] ResultSetReader now working for ValueTypes with multiple externalization elements
[jvstm-ojb] JDBCTypeMap now knows that complex value types externalize to Json
[jvstm-ojb] DO_States are no longer Serializable
[dml-code-generator] Always cast parametric types on ValueTypeSerializer
[dml-code-generator] ValueTypeSerializationGenerator cleanup