Prevents duplicate loading node relationships for created nodes

by putting a node "reservation" in the cache at the time of creating it.
This behaviour existed in 2.1 as well, but there the real node object was
put in the cache so that others could access it before the transaction got
committed. The committer will cache in the reservation, converting it to a
normal NodeImpl cached object and fill it.

Now, having the node reservations in place, readers can see that and treat
such as non-existent nodes. This prevents a race between a committer and a
reader both loading relationships of a newly created node and putting them
in the cache, yielding duplicate relationships in the cache.

Validator for this fix has been flaky org.neo4j.cypher.MergeConcurrencyIT
Test for node reservation logic

where node reservations are put in cache up front, at the time of creating
the nodes in the user transaction.
Adds PROFILE to Cypher
Removed output methods from monitor
Renamed TransactionMonitorImpl to the more descriptive name TransactionMonitorCounters. This class is now used directly by those wanting to access the counters.
Merge pull request #2843 from tinwelint/2.2-placeholder-node-cache

Prevents duplicate loading node relationships for created nodes
Changed name again of TransactionCounters, so that it really reflects what it does
Replaced AtomicIntegers with AtomicLong
Merge pull request #2815 from systay/profile

Adds PROFILE to Cypher
Upgrade browser dependencies.

"angular": "1.2.19",
"angular-animate": "1.2.19",
"angular-local-storage": "latest",
"angular-ui-bootstrap": "0.11.0",
"angular-ui-codemirror": "0.1.0",
"angular-ui-sortable": "0.12.8",
"bootstrap": "3.1.1",
"codemirror": "3.24.0",
"css": "https://raw.github.com/marijnh/CodeMirror/master/mode/css/css.js",
"d3": "3.2.8",
"es5-shim": "2.0.12",
"font-awesome": "~4.1.0",
"jquery": "2.0.3",
"jquery-ui": "1.10.3",
"jquery.animate-enhanced": "*",
"jquery.easing": "1.3.0",
"json3": "3.2.5",
"UUID.js": "git@github.com:LiosK/UUID.js.git"
Browser facelift.

Improve design and add experimental features, such as:
* Replace legend with visualisation overview in frame header.
* Replace floating inspector with inspector in frame footer.
* New visualisation code structure.
* Curved relationship arrows where necessary.
* Better caption wrapping and truncation.

Account for upgraded third-party dependencies.
Fix various minor bugs.

Author: Alistair Jones <alistair.jones@gmail.com>
Author: Andreas Kollegger <akollegger@gmail.com>
Author: Johan Brissmyr <brissmyr@gmail.com>
Author: Sebastian Wallin <sebastian.wallin@gmail.com>
Ensure Ronja only hash joins on node ids

Conflicts:
	community/cypher/cypher-compiler-2.2/src/main/scala/org/neo4j/cypher/internal/compiler/v2_2/planner/logical/steps/join.scala
Merge pull request #2859 from boggle/no-rel-joins

Ensure Ronja only hash joins on node ids
Merge pull request #2858 from oskarhane/browser_facelift

Browser facelift