Fix: Better JRE detection in Windows

1. Looks for both 64-bit AND 32-bit JREs

2. Works with all JRE directory names
The old version assumed that there is exactly one space character in the
name (e.g. "C:\Program Files\Java\jre7")
32-bit JDKs/JREs are installed to "C:\Program Files (x86)\Java", which
has two spaces. Also, Java can be installed to a custom directory, so
the single space char assumption is not a good idea.

3. Console command uses the detected Java instead of "java" from PATH.
Introduce NEO4J_CONFIG and NEO4J_LOG vars

It will ease the job of package maintainers
A couple of optimizations regarding read performance:

* Cache refers to relationship types as ints instead of Strings.
* Binary search on sorted arrays for finding properties and
  relationship types in the cache.
* Less objects instantiated during getting and iterating relationships.
* Reduced number of map lookups significantly for a getProperty call,
  especially outside transaction or in transactions without any changes.
  (previously 8 lookups whereof 2 synchronized, now down to as low as 2)
* Uses ThreadLocal as mapper from thread to transaction
* Refactored LockReleaser into TransactionState, associated with each
  transaction instead
Fixes problems when doing ORDER BY ... LIMIT x
Changes after initial feedback:
* Removed some old conflict code which was commented
* Uses Arrays#binarySearch instead of the temporary solution by copying its code and modify it
* Changed name of IntArrayIterator to something more appropriate
* Renamed method and removed unecessary TxManager#init code
added jvm compatibility check for embedded use
added jvm compatibility check for server
Merge pull request #312 from systay/top_results_not_ordered

Fixes problems when doing ORDER BY ... LIMIT x
Merge pull request #313 from lassewesth/jvmcompat

added detection of non-jdk6 in order to warn user
Added undocumented ability to specify the order that relationship types are returned by traversals via REST
Upgraded the FOP version used to build the PDF output for the manual.
Merge pull request #307 from tinwelint/read-optimizations

A couple of optimizations regarding read performance:
Fix for auto-index docs.
Got rid of a few sysouts.
Fixes an issue where a file lock for a store wouldn't be released when closing
Discourages use of Future#get() (without timeout). There was an issue where a call to ResponseFuture#get() never complete, which would mean that there was no response, and no timeout. That in itself is a bug and should be investigated. Short term though, including a timeout will solve it
Merge pull request #319 from tinwelint/ha-robustness-fixes

Ha robustness fixes
Fixes listener addition/removal

Tries to get listeners to events to register on init(), be removed on shutdown(). That makes some nasty bugs go away by ensuring events
  are not received when they no longer can be handled.
Fixes the ClusterClient life by adding an init() that was missing.
The above allow for the ClusterClient to be added to the life of HAGD as soon as it is created.
Touches up some tests.
Merge pull request #314 from jakewins/type-ordered-traversal

Expander type in REST
Merge pull request #320 from digitalstain/listener-lifecycle

Fixes listener addition/removal