Burrow-wheeler (BW) algorithm is probably the most widely used aligner out there. Largely it is popular because of it's speed and tendency to not take much memory. However, it has limitations when it comes to aligning very short reads (e.g. gRNA). Also, setting maximum number of mismatches allowed is complicated by the seed length, overlaps and other parameters.
I wonder if there is any better multi-purpose aligner out there. One which allows special cases e.g. allowing shord reads and high number of mismatches.