Clarify default cache type per edition
Merge pull request #3098 from cleishm/default_cache

[2.0] Clarify default cache type per edition
String->long in-memory efficient index for batch importer

for use in cases where the node ids given in the node/relationship input
aren't actual record ids, but arbitrary strings. When using this type of
IdMapping the node ids (strings) are fed to the in-memory index during the
node import stage and sorted, and general prepared for getting
String->long later in other stages that deals with relationships where
they also specify these strings as the start/end node ids.
Merge pull request #3110 from tinwelint/2.2-batch-import-external-ids

[2.2] String->long in-memory efficient index for batch importer
Restructuring of store and transaction packages

o.n.k.i.
  nioneo.store --> store.{record,id}
  transaction.xaframework --> transaction.{log,state,command}

And various other classes moved to a more logical place.
Merge pull request #3106 from tinwelint/2.2-remove-xa-packages

[2.2] Restructuring of store and transaction packages
Merge remote-tracking branch 'upstream/2.0-maint' into 2.1-maint
Merge remote-tracking branch 'upstream/2.1-maint'

Conflicts:
	community/kernel/src/docs/ops/cache.asciidoc
Move PeriodCommitHint AST node out of Clauses

And rename Hint to UsingHint
For annotation, use ASTNode+Position over objId
Use SemanticState to track expandStar rewrites
Split ClosingClause

Into HorizonClause for scoping, and ProjectionClause for projection
Make expandStar match on clauses

Rather than on the ReturnItems
Introduce _PRAGMA WITH NONE

Used when all projections have been inlined
Introduce _PRAGMA WITHOUT

Used to remove identifiers from scope
Use _PRAGMA WITHOUT to remove introduced identifiers
Allow additional items on `WITH *` and `RETURN *`

e.g. `WITH *, 1 AS m`

Also use this in pre-semantic-check rewriting, to ensure
`ORDER BY` clauses on `WITH *` and `RETURN *` are correctly normalized,
removing the need to do this again during `projectFreshSortExpressions`.
Merge pull request #3115 from cleishm/semantic_playground

Allow additional items on `WITH *` and `RETURN *`
Unpacking of transaction logs occurs right after response deserialization