Added code to name gene-ids according to the cluster they belong to

Name format = <species>_c<cluster num>_<paralog num>

paralog numbers start with 0
bug fix to correct strand info

I had defined the + strand as start > end. Should eb the other way around
modified to maintain unique names across multiple runs of thew script

This was accomplished by pickling the dictionary containing the list of unique names
then reloading it at the start of the next usage

Pickled dictionary is stored in the directory that the script is run from, so multiple
runs from the same location will all have unique names.
updated the docstring to reflect previous change
Removed the functionality of removing sequences from cluster fasta files and replacing them with consensus sequences

I was not happy about having this (somewhat unrelated) functionality in this script.
The only reason it was placed here was because I need the info about which cluster each
consensus sequence belongs to. This info is now stored in the GTF file, which I am also
going to use to extract the coding portion of the sequence and add it to the corresponding
cluster as a separate step
Added ability to specify the number of processors from the command line (default=6)
modified to run only on fasta files that have been modified more recently than the alignment or tree file
Skip groups represented only by reference sequences
Have to pass max_task to the exec_commands function because it wasn't working as a global variable

Since a list of commands is passed, the solution was to prepend max_tasks to the start of the
list, then remove it before processing the rest of the list
added docstring
convert numeric values from blast output to int/float and test both subject and query for reversed coordinates

annoyingly, blastx and blastn differ in which sequence is reversed when the hit is on the
opposite strand. This script now tests for both. As long as both aren't reversed (indicating
the same strand), this should work

This issue turned out to be somewhat moot, because the script was doing a lexical comparison
of values. This is the second time this "feature" of python has bitten me in the ass. I
have now converted all numeric fields from the blast to int or float