Added MediaStream[Audio] API on drowser
Added audio live input support to gstreamer webaudio backend

The approach uses a sub-pipeline to read/deinterleave the audio
buffers from the audiosrc (autoaudiosrc) and provide these buffers
through a pull-based mechanism using appsinks to do that. That
pipeline is encapsulated in the AudioLiveInputPipeline class,
which has one instance created/started at AudioDestination
initialization and is stopped/destructed when the the same
AudioDestination is destructed. The deinterleaved buffers are
then pulled from the input pipeline each time webKitWebAudioSrcLoop
executes and passed to the webaudio stuff into the sourceDataVector.

- To test you may use the following html page, or something like that:
https://gist.github.com/nickdiego/6064829

TODO:

* For now, WebKitWebAudioSrc has been modified to work *only* as a
live source. That doesn't prevent non-live audio to be played, but
introduces some latency in that case.

* There is still some synchronization problem between the pipelines
(input/main) which causes several underflow warnings and some really
short audio breaks into the stream. As a workaround, for now, we're
setting some properties of audiosink, increasing its latency and
drift tolerance. It should be more investigated later.

* Add support to gstreamer 1.0

* Some channel numbers are still hardcoded.

Signed-off-by: Nick Diego Yamane <nick.yamane@openbossa.org>
Rebased with current master and mediastream branches

- Using now std::string and std::vector instead of Nix::String and
  Nix::Vector

TODO:

- Webaudio partially working, getting several glib warnigs when
trying to map/unmap input buffers as well as in some other _unref calls

Signed-off-by: Nick Diego Yamane <nick.yamane@openbossa.org>