fix start script for SmartOS
Licensing for Windows installer.
Removes LegacyPlanBuilder
Fix null pointer access.

Also remove the now unused second constructor of
NoSuchLogVersionException and fix wording in remaining constructor.
Ensure ResourceIterator is properly closed.
Clean up of QueryContext
Fixes query output in article tests
Adds collection slice and index operators to Cypher
Merge pull request #1131 from jotomo/npe-fix

Fix null pointer access.
Merge pull request #1132 from jotomo/close-iterator

Ensure ResourceIterator is properly closed.
Merge pull request #1124 from systay/slice

Adds collection slice and index operators to Cypher
Merge pull request #1128 from tinwelint/2.0-try-with-tx

Transaction compatible in try-with-resource
Welcome, @yinwang0
Merge pull request #1125 from yinwang0/master

fix start script for SmartOS
Merge pull request #1129 from systay/no-legacy-planbuilder

Removes LegacyPlanBuilder
Merge pull request #1121 from systay/querycontext-cleanup

Clean up of QueryContext
Introducing LabelScanStore

A LabelScanStore has one responsibility and that is to be able to quickly
and efficiently answer which nodes have a particular label. It will be
updated with node->label changes transactionally and generally integrates
with Neo4j similarly to SchemaIndexProvider, as a kernel extension.

A default implementation using lucene is added, which can rebuild itself
during the recovery phase of the db if the index backing the scan store is
missing or corrupted.

The main point of integration for the reading of a label scan store is in
statement operations method nodesGetNodesForLabel (in
EntityReadOperastions to be precise), where a piece of code looping over
the node store is now replaced by one line asking the active label scan store
instead.

Also the graph database configuration option "load_kernel_extensions" is
removed since there are now so many essential kernel extensions that it
does not make sense to run without. Prior to removing this there was a
SchemaIndexProvider that did nothing but fail when trying to populate an
index and was returned and used when there were no provider loaded. That
would start and work, but make little sense. Instead of going further down
that path with the label scan store that option was removed and exceptions
are thrown on startup directly instead of failing at an arbitrary point
some time in when the database is used.

There's a lifecycle change to get this to work, or rather some cleaning up
of lifecycle management in NeoStoreXaDataSource in that:
 o init
   - previously: life.init()
   - now: <nothing>
 o start
   - previously: life.init(), recovery, life.start()
   - now: instantiates a new LifeSupport, life.init(), recovery,
     life.start()
 o stop
   - previously: life.stop(), force
   - now: force, life.shutdown()
 o shutdown
   - previously: life.shutdown()
   - now: <nothing>

This change works, and is cleaner, with HA where potentially multiple
start()/stop() sequences are issued