baseparse: fix tag handling
baseparse: fix tag handling

In 0.10 there were no sticky events, and all tag events
sent would just be merged with the previously-received
tags. In 1.x we have sticky events, and the tags in the
tag event(s) should at all times carry the complete tags,
so we can't just push some tags and then just push tags
with just bitrates to update the bitrates, etc.

Instead we need to keep track of the upstream stream tags
received, of the tags set by the video decoder subclass,
and send an updated tag event with the combined tags
including our own bitrate tags (if applicable) whenever
the upstream tags, the subclass tags or any of our bitrates
change.

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

StreamUtils/gstreamer,StreamUtils/gstreamer,krichter722/gstreamer,jpxiong/gstreamer,jpxiong/gstreamer,StreamUtils/gstreamer,centricular/gstreamer,krichter722/gstreamer,jpxiong/gstreamer,krichter722/gstreamer,jpxiong/gstreamer,centricular/gstreamer,jpxiong/gstreamer,StreamUtils/gstreamer,StreamUtils/gstreamer,centricular/gstreamer,centricular/gstreamer,centricular/gstreamer,krichter722/gstreamer,krichter722/gstreamer