title: py2neo graph.merge() behaves differently from Cypher MERGE?
body: <p>So, for an empty database <code>MERGE (N1:A {name:"A"})-[:r]-&gt;(N2:B {name:"B"})</code> will create two nodes <code>N1</code> and <code>N2</code> with an edge <code>r</code> between them. The following python code however does <em>not</em> do that... but why? Should it not?</p>
  
  <pre><code>from py2neo import Graph, authenticate, rel, Node
  
  graph = Graph()
  
  # set up authentication parameters
  authenticate("localhost:7474", &lt;user&gt;, &lt;password&gt;)
  
  # clear the data base
  graph.delete_all()
  
  graph.merge(rel(Node("A" , name="A"), "r", Node("B" , name="B")))
  </code></pre>
  
  <p>Running that script results in a still empty database. Why is that and how can I get the Cypher merge behaviour from py2neo without using <code>graph.cypher.execute("MERGE ...")</code>?</p>