REVIEW: Extract mime-type handling

This also changes the MimeSupport api to not rely on StorageFileItem and ContentLocator.