Blast heuristics
Step 1 - Indexing
Step 2 - Initial searching
Step 3 - Extension
Step 4 - Gap insertion
Step 5 - Score reporting