title: How to resolve nested types in GraphQL?
body: <p>I'm having trouble resolving graphql nested types. I can successfully get the <code>UserMetrics</code> nested resolver to fire, but the parent resolver object (user) is null. Am I misunderstanding the GraphQL resolver map?</p>
  
  <p>Schema:</p>
  
  <pre><code>type User {
      id: String!
      metrics: UserMetrics
  }
  
  type UserMetrics {
      lastLogin: String!
  }
  </code></pre>
  
  <p>Resolver:</p>
  
  <pre><code>Query: {
      user(_, { id }, ctx) {
          return { id }; 
      }
  },
  
  User: {
      metrics(): ({}), // UserMetrics.lastLogin doesn't fire without this
  },
  
  UserMetrics: {
      lastLogin(user) {
          console.log(user); // null
      }
  },
  </code></pre>