document SSL chained certificates
Fixes #973

Since logback is a weak dependency, i.e. it may or may not be present at
runtime there cannot be an import referring to it. Instead a
LogbackWeakDependency class is introduced which contains reflection code
to try to load it, with a fallback if not present.
Fixes #58

o Introduces GraphDatabaseSettings#logical_log_rotation_threshold for
  controlling log size for auto-rotation.
o a logical_log_rotation_threshold=0 value means no auto-rotation.
o These two above will replace the setters on XaLogicalLog and
  XaDataSource, namely #setLogicalLogTargetSize() and #setAutoRotate(),
  but they are just deprecated for now.
Fixes #62

o More descriptive error message for missing cache type.
Moved server plugintest to a separate module.

This means that they can be part of the regular build now,
and don't have to be run separately.
Correcting spelling mistakes in the comments.
Removed a sys out.
Split up and rearrange docs on creating unique nodes.
Merge document SSL chained certificates by SA.
Merge pull request #991 from tinwelint/fix-62

Fixes #62
Merge pull request #986 from tinwelint/fix-58

Fixes #58
Merge pull request #982 from tinwelint/fix-973

Fixes #973
AutoConfigurator can now handle case where physical memory < JVM memory
Merge 1.9 (branch '1.9-maint') into 2.0 (branch 'master').

Conflicts:
	community/embedded-examples/src/test/java/org/neo4j/examples/GetOrCreateDocIT.java
	community/kernel/src/main/java/org/neo4j/kernel/AutoConfigurator.java
	community/kernel/src/main/java/org/neo4j/kernel/InternalAbstractGraphDatabase.java
	community/kernel/src/test/java/org/neo4j/helpers/SettingsTest.java
	community/server/src/main/java/org/neo4j/server/AbstractNeoServer.java
	enterprise/server-enterprise/src/main/java/org/neo4j/server/enterprise/StandaloneClusterClient.java
Compilation Failures:
	kernel/src/main/java/org/neo4j/kernel/impl/transaction/xaframework/XaFactory.java
	kernel/src/test/java/org/neo4j/kernel/impl/nioneo/xa/WriteTransactionTest.java
Add transactions around Server Plugin execution.

Transactions are used in two places around plugin execution:
o When getting the parameters for the plugin.
o When serialising the result from the plugin.

The plugin is responsible for the transactions required for the execution of the plugin.