Implement data stitching

The second of the major features Yingrui wants to see before showing the GUI to users. His memo regarding this states:

4 The code to stitch multiple curves can be found in the script provided for this GUI
https://code.ornl.gov/ndip/tool-sources/sans-data-reduction/gpsans-reduction/-/blob/main/gpsans.py?ref_type=heads#L226

    if config_num > 1:

        merged_profile = stitch_profiles(profiles=[output_array[0][0].I1D_main[0],
                                               output_array[1][0].I1D_main[0]],
                                     overlaps=[stitching_q_1_2[0], stitching_q_1_2[1]],
                                     target_profile_index=0)

5 The final stitching tool should be able to stitch 1D curves by loading from previous results. People may revisit previous results or results from other reduction methods / software and try to stitch them