Improve audio format settings

This improves:
1. Only the active audio format is requested from the server. I suspect
HTTP_192_MP3 will break in the future, since it allows access to high
quality audio without Pandora One. To be safe, it's best not to include
it in the request if not needed.
2. This makes the settings dialog format names more descriptive
("128kbps MP3" instead of "mp3")
3. Allows unlisted formats to be requested by placing them in pithos.ini
Update volume control when gstreamer volume changes

Adjusting Pithos' volume through pulseaudio would change the the volume
in self.player, but not the volume control, resulting in the control
becoming out-of-sync with actual volume. This commit fixes this.

This should also fix https://bugs.launchpad.net/pithos/+bug/780031
since the volume preference will be updated for pulseaudio volume
changes.
Update fake.py for JSON API
Allow custom partner info to be set in pithos.ini

May be helpful for certain proxies
https://github.com/PromyLOPh/pianobar/issues/243
Add some more error messages
Better proxy settings

Makes all HTTP traffic respect proxy settings, including gstreamer and
Last.fm.

Adds a control_proxy setting that only proxies Pandora API traffic (for
those outside the US).

Converts pylast to use urllib2. Though pylast has proxy settings, it's
easier just to convert it to use the urllib2 proxy.
Improve pyxdg fallback config_home

This matches the behavior of pyxdg better
Don't load trackGain or albumDetailUrl

Loading trackGain can fail since some songs do not return a trackGain.
Remove it and albumDetailUrl since neither are used by Pithos.
Use a cubic scale for the volume slider

This matches PulseAudio's sliders and provides a smoother percieved
volume change.
Allow spacebar to toggle playback when the main window has focus.
Merge pull request #5 from fragmede/spacebar-pause

Allow spacebar to toggle playback when the main window has focus.
Merge from kreed/pithos: Improve audio format settings

This improves:
1. Only the active audio format is requested from the server. I suspect
HTTP_192_MP3 will break in the future, since it allows access to high
quality audio without Pandora One. To be safe, it's best not to include
it in the request if not needed.
2. This makes the settings dialog format names more descriptive
("128kbps MP3" instead of "mp3")
3. Allows unlisted formats to be requested by placing them in pithos.ini
Give the audio format config entry a new name to be backwards compatible with older Pithos versions
Error if audio format doesn't work
Merge kreed/pithos:

  * Don't load trackGain or albumDetailUrl
  * Improve pyxdg fallback config_home
  * Add some more error messages
  * Allow custom partner info to be set in pithos.ini
  * Update fake.py for JSON API
Merge kreed/volume: Volume control on cubic scale that follows gstreamer
Merge 'kreed/proxy': use urllib2 for better proxy support

Conflicts:
	bin/pithos
	pithos/PreferencesPithosDialog.py
	pithos/pandora/pandora.py
Use a provided "quality" settings, rather than requesting a format.

Based on / thanks to:
	Pianobar 524abb974
        glennimoss pull request
Configurable tuner client data.
Use force_client= in the config file: a built-in client name or a JSON literal.
Add a default opener