Widens recoverable failure scenarios for schema indexes

Failures while populating indexes include crashes which may leave the
 index files themselves inconsistent. That may lead to the indexes
 being unable to open and recovery on them impossible to proceed. However,
 such a scenario can be recovered by deleting and repopulating the index,
 as it's done for failures so far.
 This commit adds two more exceptions to the list of recovereable errors.
 FileNotFoundException and EOFException thrown when opening a lucene
 index, which may come up if the index is not closed properly, as in
 the case of a VM crash.
Merge pull request #2012 from digitalstain/index-open-failure-handling

Widens recoverable failure scenarios for schema indexes
Merge remote-tracking branch 'davide/2.0-load-csv-query-context-refactor'

Conflicts:
	community/cypher/cypher-commons/src/main/scala/org/neo4j/cypher/CypherException.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/ClosingIterator.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/Query.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/ast/convert/StatementConverters.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/parser/CypherParser.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/parser/Query.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/pipes/LoadCSVPipe.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/pipes/QueryState.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/spi/DelegatingQueryContext.scala
	community/cypher/cypher-compiler-2.1/src/main/scala/org/neo4j/cypher/internal/compiler/v2_1/spi/QueryContext.scala
	community/cypher/cypher-compiler-2.1/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/ClosingIteratorTest.scala
	community/cypher/cypher-compiler-2.1/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/pipes/LoadCSVPipeTest.scala
	community/cypher/cypher/src/main/scala/org/neo4j/cypher/internal/CypherCompiler.scala
	community/cypher/cypher/src/main/scala/org/neo4j/cypher/internal/spi/v2_0/TransactionBoundQueryContext.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/ExecutionEngineTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/ExecutionPlanBuilderTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/LabelActionTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/compiler/v2_1/QueryStateHelper.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/spi/v2_0/TransactionBoundExecutionContextTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/spi/v2_0/TransactionBoundQueryContextTest.scala
	community/cypher/cypher/src/test/scala/org/neo4j/cypher/internal/spi/v2_1/TransactionBoundExecutionContextTest.scala
	community/kernel/src/main/java/org/neo4j/kernel/impl/nioneo/xa/NeoStoreTransaction.java
	community/kernel/src/main/java/org/neo4j/kernel/impl/transaction/xaframework/XaResourceManager.java
	community/server/src/test/java/org/neo4j/server/rest/transactional/CypherExceptionMappingTest.java
Merge remote-tracking branch 'upstream/2.0-maint'

Conflicts:
	community/kernel/src/main/java/org/neo4j/kernel/InternalAbstractGraphDatabase.java
Fix compile errors in build
Fix better error message when failing opening resource in load csv
More compile errors
Merge pull request #2023 from davidegrohmann/2.1-fix-resource-failure-load-csv

Fix better error message when failing opening resource in load csv
Nicer error messages on transaction failure, especially when trying to delete a node that has relationships
Add opencsv to main/assemblies
Fix the assembly include for opencsv
Add autocommit support to browser and in load csv
Extracted all profiler acceptance tests from ExecutionEngineTest and converted to using fun suite
Add test that verifies that PERIODIC COMMIT works with profile()
Update Documentation for PERIODIC COMMIT
Clean up of cache use for cypher compiler 2.1
Add test that documents that PERIODIC COMMIT doesn't work with the batch resource