audio: Log buffering messages
audio: Add appsrc need-data and enough-data callbacks
audio: Make appsrc buffer between 0.5 and 1 MB of data
spotify: Only push audio data when GStreamer wants more
Merge branch 'feature/spotify-to-use-gst-time' into feature/limit-spotify-data-pushing

Conflicts:
	mopidy/audio/actor.py
	mopidy/backends/spotify/playback.py
Merge branch 'develop' into feature/limit-spotify-data-pushing
audio: Add MB constant to make code more readable
spotify: Hook need-data and enough-data callbacks onto appsrc
spotify: Reduce callback logging
Fix use of threading.Event for Python 2.6 and clear connected state.

threading.Event's wait method returns None on python pre 2.7, which means all
searches would fail. This also corrects that fact that we weren't clearing the
connected threading event on disconnects. I did not add any tests for this at
this time as I just want to get the fix out.
Release v0.11.1
Merge branch 'develop' into feature/limit-spotify-data-pushing

Conflicts:
	mopidy/backends/spotify/session_manager.py
audio: Add clocktime_to_millisecond util function
audio: Use time conversion utils
js: Add a package.json to simplify JS dev env setup
audio: Fix docstring
audio: Update mixer track selection logic (fixes #307)

We now ensure that the track we choose has one or more volume channels we can
control. This change also fixes that fact the MIXER_TRACK setting would not
work if we happened to find a track that was flaged as MASTER OUPUT before
finding the right label, so far no one has reported this as an issue.
mpd: Use bytestring for **kwargs key (#302)
Update changelog with mixer track selection change.
docs: Bind console functions in JS examples

For e.g. ``console.log`` to be used as a callback, it must be bound to the
``console`` object first: ``console.log.bind(console)``. If not, this will
cause "Illegal invocation" errors in WebKit browsers.

This change updates all our Mopidy.js examples to bind ``console`` functions
before they are used as callbacks.

Fixes #298.