[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

  * Closes #159
[core-api] Added Tests for JsonConverter
[dml-code-generator] Complex Value Types now externalize to Json

  * Closes #165
[jvstm-ojb] Refactor: Now supporting complex ValueTypes

  * The backend now knows that complex Value Types are serialized to JsonElements,
    and as such, knows that the SQL type for them is that of the JsonElement.
  * Instead of doing manual [de]serialization of ValueTypes, the generated code
    now delegates that responsability to the ValueTypeSerializer
  * Closes #166
Merge pull request #167 from jcarvalho/feature/json-element

Adding Json Support to the Framework
[core-api] JsonConverter is now also able to convert Enums
Fix sequential consistency bug in the BPlusTrees
Fix indentation
Revert "Fix indentation"

This reverts commit 1df30f67239538cc070854e7acd9663edb5b6cdf.
Revert "Fix sequential consistency bug in the BPlusTrees"

This reverts commit 0503925ffe003c9013a9e806d2e39868b785933e.
Add comment to fixLeafNodeArraysListAfterSplit noting the use of bidirectional relation semantics
Merge pull request #169 from smmf/feature/restore-eae5c807e9fd531a2d9dc4eb7d55e34fba2d87be

Feature/restore eae5c807e9fd531a2d9dc4eb7d55e34fba2d87be