title: peewee: Get a single model instead of SelectQuery when back-referencing a foreign key
body: <p>I am struggling a bit with back-referencing foreign keys in <code>peewee</code>.
  Consider the following code:</p>
  
  <pre><code>import peewee as pw
  
  db = pw.SqliteDatabase(':memory:')
  
  class Parent(pw.Model):
      name = pw.CharField()
  
      class Meta:
          database = db
  
  
  class Child(pw.Model):
      name = pw.CharField()
      parent = pw.ForeignKeyField(Parent, related_name="kid")
  
      class Meta:
          database = db
  
  db.create_tables([Parent, Child])
  
  bob = Parent.create(name="Bob")
  alice = Child.create(name="Alice", parent=bob)
  </code></pre>
  
  <p>Getting access to Bob's children can be done with <code>bob.kid</code>, which would give me a <code>SelectQuery</code>. By design, however, I know that any <code>Parent</code> can only have a single <code>Child</code>. Accessing that child could then be done with <code>bob.kid[0]</code>.</p>
  
  <p>I would like to be able to access a <code>Child</code> from a <code>Parent</code> by simply calling <code>bob.kid</code> and not <code>bob.kid[0]</code>. Can this be achieved <em>without</em> modifying the <code>Parent</code> class further?</p>