Added moving_window generator
WIP Make pyamp use gstreamer 1.0 and gi python bindings
Updated setup.py for Python3...

most notably, I realised that sqlite3 bundled, so we don't need to require
pysqlite. I also replaced Twisted with asyncio (formerly tulip), which will
render the app totally dead, but will hopefully be shiny fun to use :-)
Made relative imports work with Python3
Bracket prints
Suspend importing of gstreamer...

whilst trying to get import of pyamp just to work!
Added LoopingCall and threaded_future constructs for asyncio...

to mirror functionality in Twisted, which I'm going to start removing.
Begin replacement of Twisted with asyncio
Use Python 3's metaclass syntax
Various Python 3 fixes to make unit tests pass
Merge branch 'gstreamer_1.0' into python3

Decided to merge refactoring work for gstreamer 1.0 and python3, because they
kinda feel related. Also, trying to avoid too much divergence between them!

Had to remove gstreamer logging as I can't (yet?) figure out how to do it with
the gobject introspection bindings.

Conflicts:
	pyamp/player.py
	pyamp/util.py
	setup.py
	test/test_util.py
More porting of Gstreamer code from 0.1 -> 1.x...

mostly following very useful reference
 - https://wiki.ubuntu.com/Novacut/GStreamer1.0#query_new_duration.28.29
 with additional material from
  - http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-porting-1.0.html

Especially note the bit about controllers :-s
More fixes - can actually play a track again now!

Caveats:
 - No track progress updates
 - No track discovery
 - No quit on play finished
 - No controllers/fading
Updated terminal unit tests to work in background...

like if git gui is running pre-commit hooks!
Updated name of default config file in setup.py
Fixes to live tag processing and display drawing!

We can now actually play with UI display of track name and progress!
Refined some details of logging...

Made asyncio quieten down - it had lots of debug output - and also made
pyamps loggers namespaced to pyamp.* so that others can change pyamp's
verbosity more easily, should they so wish.
Updated .gitignore
Fix Keyboard's use of xrange -> range for python3...

This belayed the fact that Issue #11 was partly do with not actually
attaching any input handling to the event loop (connect_read_pipe returns a
coroutine generator, not a task, so it never got scheduled on the loop).
Fix input...

It seems that between the version of tulip that I was playing with some
time ago and the current asyncio module, one can no longer add stdin as a
pipe to the event loop, but that the file reports read-readiness correctly.

So, this fix puts stdin in non-blocking mode and hooks up a callback to do
handle input.

Closes #11