text: Title: [BUG] Confusing handling of edgeless cypher queries
  Body: ```
  import neo4j 
  import graphistry
  NEO4J = {
      'uri': "bolt://***********:7687",
      'auth': (******, *********)
  }
  graphistry.register(bolt=NEO4J, username=*******, password=****, api=3, protocol="https", server="hub.graphistry.com", token=*****)
  g = graphistry.cypher("""MATCH (n)--(m) RETURN n,m LIMIT 100""")
  g.plot()
  ```
  
  => 
  
  ```
  Exception: {'data': {'bindings': {'destination': '_bolt_end_node_id_key', 'source': '_bolt_start_node_id_key'}, 'dataset_id': '6211bfae854345b3907bac85792a2ca6', 'error_message': "Edge binding 'source' points to a column named '_bolt_start_node_id_key' that does not exist, is there a typo in column name?"}, 'message': 'Invalid edges bindings', 'success': False}
  ```
  
  
  Best would be for this to load as the cypher connector can detect the situation and synthesize in an empty table with any bound columns.