Extract CourseFactory for test fixtures
Basic functions for Sections and codes
Refactor TraceData formatters
First steps SectionsTracer (mark first/last punches)
SectionsTracer refines indices for non-adjacent sections
WIP refine overlapping sections markers
WIP refine overlapping sections with outliers
Define SectionPunches#isMissing
Extract sub methods from sections trace algorithm
Finish refineSectionsMarker algorithm

Correctly handle missing sections in split and join steps
Better handling of sections marked as missing in split step

Remove dead branch in prevail
Compute sections trace after refinement
Final step: merging sections trace and putting everything together
Add/use GecoConfig value holder
Define SectionTraceData
Define basic SectionsChecker
Polymorphic PunchPanel for sections
Remove CompositeChecker & co
Use custom SectionFactory in Raid App config
Section ref instead of name