Changes lifecycle of Neo4jJobScheduler

Neo4jJobScheduler created and destroyed its expensive resources
 in start() and stop(), respectively. This is generally something
 that must happen in init() and shutdown(), while the actual operation
 and use of those resources should be controlled in start()/stop(). This
 meant that users of the scheduler that created jobs in their init()
 method would get NPEs. This is now changed and it is safe to add
 jobs in the scheduler once it's init() has been called
Merge branch 'master' into 2.1-updatepuller-behave
Ensures update pulling is not performed by the master instance

The update pulling thread would not listen to instance state changes,
 which could lead up to the master instance pulling updates
 from itself. While that is not dangerous, it complicates things
 unecessarilly, what with an extra thread running and unecessary
 load created. This commit makes the update puller listen to
 changes in the instance state and start/stop as required.
Adds test for newly introduced behaviour
Merge branch 'master' into 2.1-updatepuller-behave

Conflicts:
	enterprise/ha/src/main/java/org/neo4j/kernel/ha/com/master/MasterImpl.java
	enterprise/ha/src/test/java/org/neo4j/ha/TestSlaveOnlyCluster.java
	enterprise/ha/src/test/java/org/neo4j/ha/TransactionConstraintsIT.java
Merge branch 'master' into 2.1-updatepuller-behave
Makes pullUpdates boolean flag in UpdatePuller volatile

UpdatePuller.pullUpdates is read and set by multiple threads, so it
 needs to be volatile
Removed single:// and ha:// prefixes in backup. They still work, but are not needed, and documentation do not mention them.
Ignores file descriptor test for windows, conceptually doesn't work on that OS
Ensure getRelationships(...) returns re-usable Iterable

Stop RelationshipIterator pretending to be an Iterable
Merge branch 'master' into 2.1-updatepuller-behave

Conflicts:
	community/cypher/cypher/CHANGES.txt
	community/embedded-examples/src/docs/dev/setup.asciidoc
	community/embedded-examples/src/docs/dev/social.asciidoc
Merge branch 'master' into 2.1-updatepuller-behave

Conflicts:
	enterprise/ha/src/test/java/org/neo4j/ha/TestSlaveOnlyCluster.java
Merge remote-tracking branch 'origin/2.1-updatepuller-behave' into 2.1-updatepuller-behave
Merge pull request #2391 from cleishm/reusable-getrels

Ensure getRelationships(...) returns a re-usable Iterable
Merge pull request #2392 from rickardoberg/backupdeprecation

Removed single:// and ha:// prefixes in backup.
Correct location for javadocs in PDF for 1.9.x only.
Merge pull request #2411 from nawroth/pdf-javadocs

Correct location for javadocs in PDF for 1.9.x only.
Merge pull request #2414 from digitalstain/2.0-maint

Merge 1.9-maint into 2.0-maint
Cleanup after 1.9-maint -> 2.0-maint merge.
Can now be enabled since HTTP logging works again
Merge pull request #2418 from nawroth/1.9-2.0-merge

Docs cleanup after 1.9-maint -> 2.0-maint merge.