'Add a source of MDN data.'

def add_source(self, source_type, source_param=u'', **options):

    source_key = (u'%s:%s' % (source_type, source_param))
    if (source_key in self.sources):
        changes = self.sources[source_key].merge_options(**options)
        if changes:
            logger.debug(u'Updating    source    "%s"    with    options    %s', source_key, changes)
            return True
        else:
            return False
    else:
        logger.debug(u'Adding    source    "%s"    with    options    %s', source_key, options)
        source_options = self.defaults.get(source_type, {})
        source_options.update(options)
        source = self.create_source(source_key, **source_options)
        self.sources[source_key] = source
        return True
