title: Backward pagination with cursor is working but missing an item
body: <p>From <a href="https://stackoverflow.com/questions/9390732/looking-for-ideas-alternatives-to-providing-a-page-item-count-navigation-of-item">looking for ideas/alternatives to providing a page/item count/navigation of items matching a GAE datastore query</a>, I could find a hint how to backward page navigation with a single cursor by REVERSING ORDER.</p>
  
  <pre><code>class CursorTests(test_utils.NDBTest):
  
    def testFirst(self):
      class Bar(model.Model):
        value = model.IntegerProperty()
  
      self.entities = []
      for i in range(10):
          e = Bar(value=i)
          e.put()
          self.entities.append(e)
  
      q = Bar.query()
      bars, next_cursor, more = q.order(Bar.key).fetch_page(3)
      barz, another_cursor, more2 = q.order(-Bar.key).fetch_page(3, start_cursor=next_cursor)
      self.assertEqual(len(bars), len(barz))
  </code></pre>
  
  <p>Unfortunately it failed with this error.  </p>
  
  <blockquote>
    <p>Traceback (most recent call last):   File
    "/Users/reiot/Documents/Works/appengine-ndb-experiment/ndb/query_test.py",
    line 32, in testFirst
        self.assertEqual(len(bars), len(baz)) AssertionError: 3 != 2</p>
  </blockquote>
  
  <p>Yes, an item in boundary is missing with reverse query. </p>
  
  <pre><code>bars = [Bar(key=Key('Bar', 1), value=0), Bar(key=Key('Bar', 2), value=1), Bar(key=Key('Bar', 3), value=2)] 
  bars = [Bar(key=Key('Bar', 2), value=1), Bar(key=Key('Bar', 1), value=0)]
  </code></pre>
  
  <p>How can I fix this problem?</p>