Updating MultiLocusDataset class.

Adding 'convert_rna_to_dna' and 'convert_dna_to_rna' methods to
sate.alignment.MultiLocusDataset.

These methods allow converting between DNA and RNA nucleotide
encodings.
Adding tests for new MultiLoucsDataset methods.

Adding unit tests for new 'convert_rna_to_dna' and
'convert_dna_to_rna' methods.
Adding conversion of RNA inputs to DNA.

Updating sate.mainsate.finish_sate_execution() function to convert all
RNA sequence data to DNA characters. The motivation is to make sure all
nucleotide data within a SATe analysis are encoded as DNA. This will
minimize the chance of tools choking on, or doing something unexpected
with, RNA data.  The RNA characters are restored before the final
alignments are written. These conversions are done with the
convert_rna_to_dna and convert_dna_to_rna methods of the
MultiLocusDataset class. The conversions are performed at the same
points when the taxon names are converted.

Currently, the config.commandline.datatype remains as RNA, which is used
to check if conversion back to DNA is necessary before the final outputs
are written. Thus, the data type can be 'RNA' internally, but all
nucleotide characters should be DNA.
Updating RNA to DNA conversion behavior in mainsate

During the interanl conversion of of all RNA data to DNA, the 'datatype'
config element is now changed to 'DNA' as well, so that all internal
reading and writing of data works in DNA encoding.

A 'restore_to_rna' boolean is now set to true in
mainsate.finish_sate_execution when any RNA is converted to DNA. This
boolean is then used later on in this function to convert back to RNA.
Updating MultiLocusDataset._convert_rna_to_dna.

Allowing this method to handle both SequenceDataset and dict
(e.g., Alignment) elements of the the MultiLocusDataset instance.
Also, adding code to update the datatype of each element.
Adding tinyrna.fasta test data file.
Updating MultiLocusDataset._convert_rna_to_dna.

Conversion back to RNA was not working, because this function
required the current datatype to be RNA. Updating code to fix
this.
Adding RNA tests to test_main.py

Adding preliminary tests of new RNA handling behavior to
test_main.py.
Adding multilocus RNA data to test data.
Adding mixed multi-locus data to test data.
Adding tests to test_main.py.

Adding a lot of tests, most of which check behaviors for RNA data.
Importantly, one tests whether the alignments are the same for
identical RNA and DNA sequence datasets. Also adding test to
ensure mixed data cannot be run currently.

Also overhauling a lot of the test code in SateTestCase and
test_alignment.py.