def get_author_to_model_dict(model_name_tuples, lower=True):
    """
    Get a dictionary of author names mapped to model names.

    Args:
        model_name_tuples (iterable): An iterable of ModelNames or unnamed
            tuples of (model_name, author_name).
        lower (bool, optional): Make all output names lower-case.
            Defaults to True.

    Returns:
        dict: Dictionary mapping author names to model names. Output will only
            be in lower-case.
    """
    output = {}

    for (model_name, author_name) in model_name_tuples:
        if lower:
            model_name = model_name.lower()
            author_name = author_name.lower()

        if author_name in output:
            output[author_name].append(model_name)
        else:
            output[author_name] = [model_name]

    return output