simplified MediaSource handling

Since we use now the very abstract Resource Location, MediaSource can
be implemented based upon this and no further subclasses are necessary.
This also removes the ugly runtime type checking when dealing with
MediaSources.
Added context menu to media item