code: @Override
      public KAlignmentResult<P> align(NucleotideSequence sequence, int from, int to) {
          return align(sequence, from, to, true, null);
      }
docs: 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