title: Bidirectional fetching in GraphQL
body: <p>I have the following GraphQL schema:</p>
  
  <pre><code>interface Node {
    id: ID!
  }
  
  type User : Node {
    id: ID!
    name: String!
    tasks: [Task]
  }
  
  type Task : Node {
    id: ID!
    day: Int!
    description: String!
  }
  
  type Viewer {
    users: [User]
  }
  
  type Query {
    viewer: Viewer
  }
  </code></pre>
  
  <p>Basically, every user can have a list of tasks. The problem occurs when I need to fetch a list of all tasks to get a response like this:</p>
  
  <pre><code>tasks: [{
    day: 1,
    user: {
      name: "John"
    }
  }, {
    day: 2,
    user: {
      name: "Jane"
    }
  }]
  </code></pre>
  
  <p>How should I edit my schema to allow fetching like that?</p>