title: Error with urlencode in python
body: <p>I have this:</p>
  
  <pre><code>a = {'album': u'Metamorphine', 'group': 'monoku', 'name': u'Son Of Venus (Danny\xb4s Song)', 'artist': u'Leandra', 'checksum': '2836e33d42baf947e8c8adef48921f2f76fcb37eea9c50b0b59d7651', 'track_number': 8, 'year': '2008', 'genre': 'Darkwave', 'path': u'/media/data/musik/Leandra/2008. Metamorphine/08. Son Of Venus (Danny\xb4s Song).mp3', 'user_email': 'diegueus9@gmail.com', 'size': 6624104}
  data = urllib.urlencode(mp3_data)
  </code></pre>
  
  <p>And that raise an exception:</p>
  
  <pre><code>Traceback (most recent call last):
    File "playkud.py", line 44, in &lt;module&gt;
      main()
    File "playkud.py", line 29, in main
      craw(args, options.user_email, options.group)
    File "/home/diegueus9/workspace/playku/src/client/playkud/crawler/crawler.py", line 76, in craw
      index(root, file, data, user_email, group)
    File "/home/diegueus9/workspace/playku/src/client/playkud/crawler/crawler.py", line 58, in index
      done = add_song(data[mp3file])
    File "/home/diegueus9/workspace/playku/src/client/playkud/service.py", line 32, in add_song
      return make_request(URL+'add_song/', data)
    File "/home/diegueus9/workspace/playku/src/client/playkud/service.py", line 14, in make_request
      data = urllib.urlencode(dict([k.encode('utf-8'),v] for k,v in mp3_data.items()))
    File "/usr/lib/python2.5/urllib.py", line 1250, in urlencode
      v = quote_plus(str(v))
  UnicodeEncodeError: 'ascii' codec can't encode character u'\xb4' in position 19: ordinal not in range(128)
  </code></pre>
  
  <p>and with ipython (2.5):</p>
  
  <pre><code>In [7]: urllib.urlencode(a)
  UnicodeEncodeError                        Traceback (most recent call last)
  
  /home/diegueus9/&lt;ipython console&gt; in &lt;module&gt;()
  
  /usr/lib/python2.5/urllib.pyc in urlencode(query, doseq)
     1248         for k, v in query:
     1249             k = quote_plus(str(k))
  -&gt; 1250             v = quote_plus(str(v))
     1251             l.append(k + '=' + v)
     1252     else:
  
  UnicodeEncodeError: 'ascii' codec can't encode character u'\xb4' in position 19: ordinal not in range(128)
  </code></pre>
  
  <p>How i can fix it?</p>