bus: destroy signal watch from the context it was mapped to
bus: destroy signal watch from the context it was mapped to

Don't rely on g_source_remove() because it operates on the main
context. If a signal watch was added to a new thread-default context
g_source_remove() would have no effect. So simply use
g_source_destroy() to avoid this problem.

Additionally the source_id was removed from GstBusPrivate because it
was redundant with the signal watch GSource also stored in that
structure.

https://bugzilla.gnome.org/show_bug.cgi?id=734716

mparis/gstreamer,jpxiong/gstreamer,krichter722/gstreamer,krichter722/gstreamer,jpxiong/gstreamer,centricular/gstreamer,jpxiong/gstreamer,jpxiong/gstreamer,centricular/gstreamer,StreamUtils/gstreamer,shelsonjava/gstreamer,jpxiong/gstreamer,centricular/gstreamer,mparis/gstreamer,shelsonjava/gstreamer,centricular/gstreamer,shelsonjava/gstreamer,shelsonjava/gstreamer,StreamUtils/gstreamer,krichter722/gstreamer,centricular/gstreamer,krichter722/gstreamer,mparis/gstreamer,mparis/gstreamer,StreamUtils/gstreamer,StreamUtils/gstreamer,StreamUtils/gstreamer,shelsonjava/gstreamer,krichter722/gstreamer,mparis/gstreamer