The Build/ classes and Align/ classes use various sequence row identifiers (raw, processed string, row number, unique identifier, ...). Currently, the code to manage these, cross-reference them and perform searches is in the Build/Base package.
Following SR, split this out as a distinct class and aggregate it where needed.
Refactored the row identifier pattern matching code into Build/Row base class.
Decided to leave the separate Build and Align row indices intact for now.
The Build/ classes and Align/ classes use various sequence row identifiers (raw, processed string, row number, unique identifier, ...). Currently, the code to manage these, cross-reference them and perform searches is in the Build/Base package.
Following SR, split this out as a distinct class and aggregate it where needed.