Added gst _sampler and _synth backend

GStreamer can now also handle sound requirements of sample and synth
elements

Conflicts:
	openexp/_sampler/gstreamer.py
	openexp/_synth/gstreamer.py
Updated docstrings

All docstrings now simply point to those of the legacy backends
Add temporary xpyriment-gst backend setting
Fixed freezes on Linux

changed self.experiment.sleep() calls to time.sleep() as the latter
appear not to mess up multithreading
Merge branch 'playground' into soundbackends
Bump to 2.9.0~pre1
Add the quick-open-item dialog
Polish quick-open-item dialog
- Add uniform component classes
Migrate dialogs to uniform framework
- Convert sketchpad_dialog
- Convert new_loop_sequence_dialog
- Remove replace_dialog (deprecated since QProgEdit)
Further implementation of base_dialog and base_widget framework
Convert variable inspector to base_widget framework
Convert many more widgets to base_widget framework
Convert almost all widgets and dialogs to base_component framework
- item-specific widgets still todo
- opensesamerun still todo
Fix form plug-ins to deal with theme, which is now a property
Merge 2.8.3 updates from gibson into heisenberg
Convert sampler, synth, and opensesamerun to base_component framework
- Only sketchpad-related widgets still todo
Modular re-write of sketchpad runtime (#220)
- Contingent on canvas changes that are still to be comitted
- Breaks GUI
Restructure back-end framework
- For now only legacy canvas back-end
- Use yamldoc docstrings
- User factory function instead of class morphing
- All back-ends based on abstract classes (not legacy)
Baby steps towards unittest framework
All canvas back-ends now inherit canvas