Bug 1065215 - MSE endOfStream() called within an 'updateend' event can fail with 'object no longer usable' - r=karlt

Reopens the MediaSource when SourceBuffer::Remove is called on an Ended
MediaSource. Only run the Range Removal algorithm when MediaSource
duration is changed instead of calling Remove on SourceBuffers.
Updates tests for the fact that update{start,end} can now be called
more than once due to DurationChange.

--HG--
extra : rebase_source : d4c96b982ffa9f5cd0b24e6e3a4ef5dffe9be6f6
Bug 1065215 - Fix EME test for changes to MediaSource::endOfStream - r=cpearce

--HG--
extra : rebase_source : b4592fc1c0686a6bb5014a744e605e89f1342645
Bug 1065215 - web platform test should expect pass for SourceBuffer.remove reopening MediaSource - r=karl

--HG--
extra : rebase_source : 220051a73d61b5ec7dd32ed07db496f388c1ad8a