build: make bootstrap script fail properly on failure

If the first command in the bootstrap script fails, exit with non-zero
exit status instead of silently continuing to the next command.
check mime type of internet streams. allows hls playlists without m3u8 extension to be played
FIX: do not popup OSD on DVD menu with touch or mouse
[omxplayer] Avoid hang when closing stream with clock stopped

Avoids a permanent hang at EOF when using IPTV streams
ADD: [sets] allow to select art from child movies
dsound: use accurate position when getting playposition

This flag is Vista+ only, but gives much better accuracy in
delay calculations
AE: Let sinks provide GetDelay function that timestamps values

This uses accurate timer ticks instead of milliseconds to
reduce unneccessary millisecond jitter at later stages.

For now fallbacks exist to not upgrade sinks directly
AE: let timestamps from sink delay propagate as far up as possible
AE: add generic spin locker for low prio consumers
d3d: take scanline into account when calculating vblank time

This increases precision from thread scheduling precision, to normally
sub millisecond precision for the video reference clock.
osx: fix video ref clock to use timestamp of display instead of now

Now represent the time of the call, OutputTime represent when this
frame is to be displayed. Thus technically it's the next vblank,
but i don't think it's worth adjusting for.
osx: add accurate GetDelay() function using timestamps from osx

This uses a lockless approach to get tick/delay/readsize in sync.
It does so by making sure rendercallback is neither running
nor has run at any point while we are grabbing data. The
render callback is high prio, thus this busy wait loop
should only ever trigger for a very short time.
ios: accurate GetDelay() function
[win32] remove unneeded local helper
win32: add accurate GetDelay() function for WASAPI
AESinkPULSE: Use new GetDelay method to win timestamp
AESinkPULSE: Don't throw packages away if we are not yet ready
Merge pull request #12 from fritsch/clock

AESinkPULSE: Use new AEDelayStatus to get Timestamp for free
AE: if we don't have a tick, don't reduce any set delay
[externalplayer] fire onplaybackstarted event - fixes #15279