title: GraphType first schema endpoints using ListGraphType or using Connection
body: <p>I am setting up endpoints for 3 types (let's say Student, Classmate and Pet), where Student has many Classmates and many Pets.
  I figured out 2 options: </p>
  
  <ul>
  <li><p>the first is to create a FriendsInterface and have Classmate and Pet implement that interface and then return them all as a ListGraphType</p></li>
  <li><p>the second is to create a Connection to those types: ClassmateConnection and PetConnection</p></li>
  </ul>
  
  <p>What is the difference between the first and the second approach I described. </p>
  
  <ul>
  <li>Is it better to create a Connection (since I can see those allow for pagination in the API)?</li>
  <li>Does this second approach lead to having a better GraphQL schema, in which each GraphQL node is connected to the other by an edge.</li>
  </ul>
  
  <p>I tried creating a ListGraphType since that is something I could see done in the examples.
  <p>However, there is no example on how to create a Connection and I keep running into the following error:</p>
  
  <pre><code>Error message:
  Error: Request failed with status code 400
  at e.exports (http://localhost:3000/bundle.js:12:13653)
  at e.exports (http://localhost:3000/bundle.js:44:1280)
  at XMLHttpRequest.p.onreadystatechange (http://localhost:3000/bundle.js:12:12667)
  </code></pre>
  
  <p>First approach</p>
  
  <pre><code>public StudentType (MyData data) {
      Name = "Student";
      Description = "A curios creature in a giant universe.";
  
      Field (d =&gt; d.Id).Description ("The id of the student.");
  
      Field&lt;ListGraphType&lt;FriendInterface&gt;&gt; (
          "friends",
          resolve : context =&gt; data.GetFriends (context.Source)
      );
  }
  </code></pre>
  
  <p>Second approach (creating Connections)</p>
  
  <pre><code>public StudentType (MyData data) {
      Name = "Student";
      Description = "A curios creature in a giant universe.";
  
      Field (d =&gt; d.Id).Description ("The id of the student.");
  
      Connection&lt;ListGraphType&lt;ClassmateType&gt;&gt; ()
          .Name ("classmates")
          .Description ("classmate test")
          .Resolve (context =&gt; data.GetClassmates (context.Source));
  
      Connection&lt;ListGraphType&lt;PetType&gt;&gt; ()
          .Name ("classmates")
          .Description ("pet test")
          .Resolve (context =&gt; data.GetPets (context.Source));
  }
  
  public ClassmateType (MyData data) {
      Name = "Classmate";
      Description = "A misunderstood creature in a giant universe.";
  
      Field (d =&gt; d.Id).Description ("The id of the classmate.");
  }
  
  public PetType (MyData data) {
      Name = "Pet";
      Description = "An animal creature in a giant universe.";
  
      Field (d =&gt; d.Id).Description ("The id of the pet.");
  }
  </code></pre>
  
  <p>In the first approach, this is the query I want to send:</p>
  
  <pre><code>student(studentID: "1") {
      id
      name
      friends {
          id
      }
  }
  </code></pre>
  
  <p>In the second approach, the query is as follows:</p>
  
  <pre><code> student(studentID: "1") {
      id
      name
      classmateConnection {
          classmates {
              id
          }
      }
      petConnection {
          pets {
              id
          }
      }
  }
  </code></pre>