Divided plugin registration by type.

TODO: mediaPlayer needs to be able to return different kinds of player
objects (static vs. dynamic in the old code) based on the media type of
the resource (audio/video/image_sequence vs. text/image).