title: Not possible to set content-type to application/json using urllib2
body: <p>This little baby:</p>
  
  <pre><code>import urllib2
  import simplejson as json
  
  opener = urllib2.build_opener()
  opener.addheaders.append(('Content-Type', 'application/json'))
  response = opener.open('http://localhost:8000',json.dumps({'a': 'b'}))
  </code></pre>
  
  <p>Produces the following request (as seen with ngrep):</p>
  
  <pre><code>sudo ngrep -q -d lo '^POST .* localhost:8000'
  
  T 127.0.0.1:51668 -&gt; 127.0.0.1:8000 [AP]
    POST / HTTP/1.1..Accept-Encoding: identity..Content-Length: 10..Host: localhost:8000..Content-Type: application/x-www-form-urlencoded..Connection: close..User-Agent:
     Python-urllib/2.7....{"a": "b"} 
  </code></pre>
  
  <p>I do not want that <code>Content-Type: application/x-www-form-urlencoded</code>. I am explicitely saying that I want <code>('Content-Type', 'application/json')</code></p>
  
  <p>What's going on here?!</p>