Move cypher tests from JUnit to FunSuite
Cleanups
Merge pull request #2631 from davidegrohmann/kill-junit

Kill JUnit vol 3
Merge remote-tracking branch 'upstream/2.1-maint'

Conflicts:
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/planner/QueryProjection.scala
	community/cypher/docs/cypher-docs/src/test/scala/org/neo4j/cypher/docgen/DocumentingTestBase.scala
Merge pull request #2636 from davidegrohmann/merge-2.1-into-master

Merge 2.1 into master
Add Transaction.interrupt() to the Transaction API

This allows the user to interrupt a transaction, which is a more
forceful mode of failure that not only marks the transaction as failed
(i.e. such that it will be rolled back) but also causes any subsequent
kernel operations contained within that transaction to throw
an exception.

This functionality will be used as a user-facing query termination
facility.

Signed-off-by: Stefan Plantikow <stefan.plantikow@neotechnology.com>
Add support for interrupting transactions in the shell with Ctrl+C

Signed-off-by: Stefan Plantikow <stefan.plantikow@neotechnology.com>
Support for interrupting transactions via the transactional REST endpoint

o Interrupt transaction on disconnect for single query transaction in transactional REST endpoint
o Ensure ThreadToStmCtxBridge.getTopLevelTransactionBoundToThisThread() does not throw when interrupted [FIX]
o Rename assertInTransaction to assertInUninterruptedTransaction all over the place
o Changes TransactionRegistry: Now uses an ActiveTransaction marker per tx instead of a singleton
  (needed to hold a reference to the tx such that we can interrupt it from a different thread)
o Adds number of transaction interrupts to TransactionMonitor
o Add X-Transaction-Interrupt header to all requests that create a new transaction

Signed-off-by: Jakub Wieczorek <jakub.wieczorek@neotechnology.com>
Properly close ExecutionResult in ExecutionResultSerializer as soon as processing is finished

This will free resources earlier for multi-step transactions.

Signed-off-by: Jakub Wieczorek <jakub.wieczorek@neotechnology.com>
Adding tutorial for interrupting transactions to advanced section of manual

Use FileUtils.deleteRecursively() instead of copy-and-pasting similar code in all tutorials

Signed-off-by: Jakub Wieczorek <jakub.wieczorek@neotechnology.com>