def merge_dictionary(target, new_items):
    """ Merges a dictionary into the master set,
    warning when a duplicate name is detected. Keys from new_items that
    are already present in target will generate warnings without modifying
    target.

    And yes, I know there are builtin methods to merge dictionaries (update),
    but I wanted finer control over handling for existing keys.

    Args:
        target (dictionary): The destination dictionary.
        new_items (dictionary): The dictionary of new items to merge.

    Returns:
        dict: target, with all unique items merged from new items.
    """
    for name, data in new_items.items():
        if name in target:
            pass
        else:
            target[name] = data
    return target
