ref #1894 [added check for already running streams in addRemoteStream library call]
ref #1894

- introduced Consumer observer interface - for receiving callbacks from
consumer of remote media streams
- implemented thread switching “on-the-fly” with dumb strategy: upon
changing media thread, pipeliner changes name component in it’s
interests’ names which corresponds to the new thread, also key frames
counter is incremented by 1 which means pipeliner is forced to request
next key frame from new thread. however, no buffer flushing is
implemented.
- updated library interface