pull out MediaInfo and ImageInfo to their own class