Bug 1044498 - Extend WebMBufferedParser to handle timecode scale elements in locations other than the first subelement of the segment info element.  r=cajbir
Bug 1044498 - WebMBufferedReader used mBlockOffset in some places where it was intended to use mBlockTimecode.  r=cajbir
Bug 1044498 - Improve accuracy of WebM buffered parser.  r=cajbir

Store the end offset of the block, rather than the start offset, since a
frame is only usable if we have all of it.  Also compute the start of the
buffered range based on the offset of the block's resync point, since we
can't decode frames unless we have their cluster to resync at and compute
the absolute timecode from.
Bug 1040563 - Move WaitForData/NotifyGotData from MediaSource to MediaSourceDecoder, which is off-main-thread friendly.  r=cajbir

Also remove mMediaSource from MediaSourceReader and rejig SetMediaSourceDuration to go via MediaSourceDecoder and handle mMediaSource being null.