Fix memory leak when switching providers within a playlist [Delivers #79305128 #79031288]

[Fixes #79305128 #79031288]
Thank you for the feedback, if people are looking to extend the VideoProvider or YoutubeProvider, then this will definitely be important. Unfortunately using constructor.name is not an option since it is [not supported](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/name) in Internet Explorer.

A currently working option would be to create a new provider which isn't an instance of either, but is a wrapper around it.