public void Load_pending_data <TThirdPartyType, TOwnedType>(
     IFileIO <TOwnedType> pending_file_io,
     ICSVFile <TOwnedType> pending_file,
     DataLoadingInformation <TThirdPartyType, TOwnedType> data_loading_info)
     where TThirdPartyType : ICSVRecord, new()
     where TOwnedType : ICSVRecord, new()
 {
     _input_output.Output_line(
         "Loading data from pending file (which you should have already split out, if necessary)...");
     pending_file_io.Set_file_paths(data_loading_info.File_paths.Main_path, data_loading_info.Pending_file_name);
     pending_file.Load(true, data_loading_info.Default_separator);
     // The separator we loaded with had to match the source. Then we convert it here to match its destination.
     pending_file.Convert_source_line_separators(data_loading_info.Default_separator, data_loading_info.Loading_separator);
 }
        Load_third_party_and_owned_files_into_reconciliator <TThirdPartyType, TOwnedType>(
            DataLoadingInformation <TThirdPartyType, TOwnedType> data_loading_info,
            IFileIO <TThirdPartyType> third_party_file_io,
            IFileIO <TOwnedType> owned_file_io)
            where TThirdPartyType : ICSVRecord, new() where TOwnedType : ICSVRecord, new()
        {
            _input_output.Output_line("Loading data back in from 'owned' and 'third party' files...");
            third_party_file_io.Set_file_paths(data_loading_info.File_paths.Main_path, data_loading_info.File_paths.Third_party_file_name);
            owned_file_io.Set_file_paths(data_loading_info.File_paths.Main_path, data_loading_info.File_paths.Owned_file_name);
            var third_party_file = data_loading_info.Loader.Create_new_third_party_file(third_party_file_io);
            var owned_file       = data_loading_info.Loader.Create_new_owned_file(owned_file_io);

            var reconciliator = new Reconciliator <TThirdPartyType, TOwnedType>(
                data_loading_info,
                third_party_file,
                owned_file);

            return(reconciliator);
        }