title: Unexpected ... Unexpected token exception when writing Crystal JSON converter
body: <p>Why does usage of this JSON converter/parser <em>always</em> result in an exception (<code>Unexpected token: EOF at 1:98</code>)?</p>
  
  <pre><code>class MyParser
    def self.from_json(value : JSON::PullParser) : String
      "static"
    end
    # ...
  end
  
  class User
    JSON.mapping(
      first_name: {type: String, converter: MyParser},
      last_name: {type: String, converter: MyParser}
    )
  end
  </code></pre>