Refactor MediaInfo/MediaFactory relationship to make factory aspects distinct from media definitions. Remove MediaElement.initialize and all of its implementations, dynamic instantiation is now handled by a client creation function. Update all dependent code (sample apps, plugins, unit tests, etc.).