Reenable backup warning when no log files could be copied
Test cache invalidation issue for dense nodes.

The issue that causes invalid cache invalidation on rollback is
extra likely to occur for dense nodes, so a particular test case
for that scenario is desirable.
Clean up tests
Cypher: Finds more cases where Eagerness can be avoided
Cypher: Solves eagerness problems when using FOREACH
Less eagerness for MERGE
Merge pull request #2801 from systay/create-unique-eagerness

Less eagerness for Cypher - FOREACH, CREATE UNIQUE and MERGE
Improve type error message in cypher `reduce(...)`

For the case where the accumulator and the expression have mismatching
types, it was not clear that the type error was for that reason. This
change improves the message for that case.
Add EXPLAIN to the shell
Adds execution plan description handling to the server
Make sure EXPLAIN is not accepted for older compilers
Merge pull request #2806 from cleishm/cypher-reduce-type-error

Improve type error message in cypher `reduce(...)`
Merge remote-tracking branch 'upstream/2.0-maint' into 2.1-maint

Conflicts:
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/IterableExpressions.scala
	community/cypher/cypher-compiler-2.1/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/ExpressionTest.scala
	community/cypher/cypher-compiler-2.1/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/ReduceExpressionTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/SemanticErrorAcceptanceTest.scala
Merge pull request #2812 from systay/2.0-into-2.1

Merge 2.0 into 2.1
Merge pull request #2798 from chrisvest/2.2-backup-warn

Reenable backup warning when no log files could be copied
Merge 2.1-maint into master

Conflicts:
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/commands/LabelAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/executionplan/Effects.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/CreateUniqueAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/DeleteEntityAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/DeletePropertyAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/ForeachAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/MergeNodeAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/MergePatternAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/PropertySetAction.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/UniqueLink.scala
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/mutation/UpdateAction.scala
Merge pull request #2805 from systay/explain-2

Add EXPLAIN
Merge pull request #2814 from systay/2.1-into-master

2.1 into master
Code cleanup
Revert tx id counting to be retrocompatible with 2.1

- tx id counting should start from 1 rather than from 0