Remove the OSGi example.

It was removed last year from 2.0 because it was flaky and it now fails
incomprehensibly on TeamCity. There doesn't seem to be any point
spending lots of time working out what is wrong with it just for this
one unimportant example.

Conflicts:
	community/embedded-examples/src/test/java/org/neo4j/examples/osgi/Neo4jActivator.java
	community/embedded-examples/src/test/java/org/neo4j/examples/osgi/OSGiDocIT.java
Introduce the StoreChannel abstraction, and the AdversarialFSA.

The StoreChannel interface is very similar to the API of the FileChannel class.
I had to introduce it because of the many final methods of the FileChannel.
The AdversarialFileSystemAbstraction needed to be able to throw exceptions from those methods
that were marked as final in the FileChannel, so I had to abstract away the FileChannel itself, and
introduce this new indirection. The StoreFileChannel wraps a FileChannel while exposing the
StoreChannel API.

The AdversarialFileSystemAbstraction is a file system that can be configured to throw exceptions and
failures as we please. This is useful for testing partial failure scenarios that our current robustness
suite does not cover, since it currently only works by killing entire processes - not individual
transactions.
Additional cleanup after the introduction of StoreChannel
Add mischief to the adversarial file system.
Merge pull request #2132 from chrisvest/1.9-adversarial-fs

Introduce the StoreChannel abstraction, and the AdversarialFSA.
Fix building 1.9 on Java 6
Merge pull request #2144 from chrisvest/1.9-fix-java6-build

Fix building 1.9 on Java 6
Also fix the test compilation on Java 6
Raise an exception if Server shutdown fails.

Rather than just log exceptions that happen during shutdown, we
carefullly catch and record them. Then after shutdown is complete, if
there was an exception during the process we re-raise it.

This change uncovered a couple of problems that were previously being
ignored. They are cases where tests call #stop() even though #start()
did not succeed. Those #stop() methods are now more defensive to cope
with that.
Merge pull request #2153 from benbc/1.9-dont-swallow-server-shutdown-exceptions

Raise an exception if Server shutdown fails.
Fix exception merging to be compatible with Java 1.6.
Server can dictate which logging kernel uses

And will, in the server setup, have server and kernel use the same logging mechanisms.
This commit also removes usages of java.util.logging from server in favor
of the console logger in kernel.