[#983274] refactor popcorn wrapper, it no longer needs to wait for modul...

...es, check media types, or create elements unique to the media type because now we use require, mediatypes util, and popcorn.smart