title: Can a graphql query or mutation return a scalar value
body: <p>Syntactically you can define a query or a mutation in the schema such that it returns a type.
  However, an operation definition (i.e a query or mutation invoked by a client) has to have a SelectionSet, so I have to do:</p>
  
  <pre><code>mutation X { field }
  </code></pre>
  
  <p>So the result of my mutation or query has to be an object with fields, it can't be a scalar. 
  Is this right? It feels like I ought to be able to just return a scalar. The result is always wrapped in an envelope when sending across HTTP, so the result would be valid JSON either way (a simple scalar isn't strictly valid JSON). </p>
  
  <p>Is my reading correct?</p>