@Override
    public KAlignmentResult<P> align(NucleotideSequence sequence, int from, int to) {
        return align(sequence, from, to, true, null);
    }
@ Override public KAlignmentResult < P > align ( NucleotideSequence sequence , int from , int to ) { return align ( sequence , from , to , true , null ) ; }
Performs a comprehensive alignment of a sequence.
<p/>
<p>The procedure consists of 2 steps:</p>
<ul>
<li>1. Obtaining {@link KMappingResult} from {@link
KMapper}
using {@link KMapper#align(com.milaboratory.core.sequence.NucleotideSequence)}
which contains preliminary hits
</li>
<li>2. Using {@link KMappingResult} from step 1, obtaining {@link
KAlignmentResult}
by {@link #align(com.milaboratory.core.sequence.NucleotideSequence, int, int, boolean, BitArray)} method,
where all hit alignments may be loaded lazily (at first request) or immediately (depends on {@link #lazyResults}
flag value)
</li>
</ul>

@param sequence sequence to be aligned
@param from     first nucleotide to be aligned (inclusive)
@param to       last nucleotide to be aligned (exclusive)
@return a list of hits found in target sequence