Changes in the 0.9 version
--------------------------

 - Refcounting and API revised for thread safety, see rules in
   docs/design/part-MT-refcounting.txt

 - Scheduling is now done by the elements, they start/stop
   processing threads themselves. This removes the need for 
   a separate scheduler.

 - State changes now happen from sink to source. This makes sure
   that downstream elements are ready to process data when upstream
   starts producing.

 - EOS/ERROR/... does not change the state of elements anymore. This
   means that when the application sets the state on an element, it
   remains in this state.

 - GMainLoop integration. Information on the state of the pipeline
   is now received in the mainloop via the GstBus.

 - Events move separate from the datastream, this allows for both
   in and out of sync delivery of events.

 - Generic _pull() replaced by _pull_region() so that random access
   can be made faster.

 - data passing happens from PAUSED, called the preroll phase. In this
   state no data is rendered but it is queued in the sinks.

 - negotiation simplified. Caps are now attached to buffers and travel
   along with the datastream. 

 - GstBuffer is now subclassable.

 - Ghostpads now look and feel like real pads.

 - New Seeking/flushing policy.

 - Addition of base classes and helper functions in the core to abstract
   away the harder parts of plugin development.
 
