dashdemux: mpd parsing: fix query parameter parsing

Try harder to detect URL parameters and split them to accomodate
the fragment url in the concat:

base-url + fragment-url + url-parameters
dash: mpdparser: use guint64 for timestamps

The timestamps can be pretty big, so use guint64 for them
dash: mpdparser: allow periods without start time for live streams

Live streams can have undefined start times for the periods and
mpdparser can let that pass instead of erroring out
dashdemux: reimplementing live streams manifest updates

Manifest updates should be done periodically for live streams,
this patch makes the demuxer create a new manifest client for
the new version and transfers the stream position to the new
one, discarding the old one afterwards.
dash: mpdparser: do not cleanup xml lib too early

The xmlCleanupParser function seems to cleanup all statically
allocated libxml variables, making it unusable. We can't guarantee
that dashdemux won't need it anymore, so better not call it.
dashdemux: live stream playback crashfix
dashdemux: small cleanup
dashdemux: also send newsegment on startup
dashdemux: make timestamps start from 0

Non-live streams should timestamp buffers with a running-time starting from
0. Since we already push a 0 -> -1 segment, bring the timestamps to 0
by subtracting the initial timestamp.
dashdemux: only start timestamp from 0 for live stream

We only want to adjust the timestamps so that they start from 0 for live
streams. Non-live streams already start from 0 and after a seek we actually want
to timestamp to be the position we seek to.
dashdemux: remove wrong asserts

Those asserts should be the contrary that they are. And also
the surround functions should already check that. Removing them.
dashdemux: Fix another wrong assertion

Also adds a couple log messages for easier debugging
dashdemux: port to 1.0
dash: enable in configure/makefiles

It was intentionally disabled up to this point to prevent
compile failures as dashdemux development commits were all for
0.10 up to here
dashdemux: fixing compiler warnings about print formats
dash: do not use deprecated glib mutex API
dash: remove superfluous files

Authors and license are at the top of the source files
dashdemux: rename src template from src%d to src_%u
egl: Allow being used in C++ code
egl: Add destroy notify instead of always calling eglTerminate() on the display

In some scenarios, for example in QtWebKit, might be difficult to obtain full
control on the egl display and it might be only accessible indirectly via
eglGetCurrentDisplay().

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