New spectrum execution monitor for batch importer

for better overview of relative step processing costs in the stage(s)
Add initial support for determining the freshness of a plan

This involves an instrumented GraphStatistics instance that will
record each "statistical queries" and the observed values, the
result of this process called a snapshot.
In addition, we're also introducing a function defined over two
snapshots that determines if they're diverge enough for the
plans having observed one of them to be scheduled for replanning.

Signed-off-by: Pontus Melke <pontus.melke@neotechnology.com>
Merge pull request #3350 from jakub-/plan-freshness

Add initial support for determining the freshness of a plan
Change the read_only flag to ONLY mean that transactions with changes cannot commit. Specifically it now means that the database CAN change if it is a slave in a HA setup.

Format according to new scheme
Change visitor return value behaviour, so that it is consistent in all uses (false means continue)
Introduce checksum on ephemeral filesystem, primarily to be able to compare snapshots.

Formatting according to new template.
Added support for reading CSV header from separate file

and support for having multiple files look like one CharSeeker. There's
also a clearer separation of concerns between, Readable and CharSeeker and
where they are instantiated.
Merge pull request #3309 from rickardoberg/readonlychange

read_only change
Merge pull request #3353 from tinwelint/2.2-bip-spectrum-exec-mon

New spectrum execution monitor for batch importer
Merge pull request #3361 from tinwelint/2.2-bip-csv-header-in-separate-file

Added support for reading CSV header from separate file
Fixed bug in encoding short strings
Merge pull request #3357 from rickardoberg/visitorfix

Change visitor return value behaviour
Resolve varying use of neo4j vs neo4j-community

Now the dependencies are:
(neo4j-enterprise)-->(neo4j-advanced)-->(neo4j)-->(all individual modules)
(neo4j-community)-->(neo4j)

i.e. neo4j-community is only an alias for neo4j, kept for historical
reasons