Added a quadratic-space global alignment class. Made Alignments.getPairwiseAligner() return the expected global alignment algorithm. Made Alignments methods throw an UnsupportedOperationException instead of returning null.
Added comments to SubstitutionMatrixScorer.
Partially reverted #685b81c by deleting NeedlemanWunschQuadratic and removing it from Alignments.
Fixed this issue:
        NucleotideCompound A = new DNASequence("A").getCompoundAt(1);
        NucleotideCompound a = new DNASequence("a").getCompoundAt(1);
        SubstitutionMatrix<NucleotideCompound> matrix = new SimpleSubstitutionMatrix<>(DNACompoundSet.getDNACompoundSet(), (short)1, (short)0);
        System.out.println(matrix.getValue(A, a)); // prints 1
        System.out.println(matrix.getValue(a, A)); // prints 1
        System.out.println(matrix.getValue(a, a)); // prints 0!!!
        System.out.println(matrix.getValue(A, A)); // prints 0!!!
 The simple solution: compoundsEquivalent should always return true if the two are equal.
 Added a test for this.

 Also deprecated the no-args constructor SimpleSubstitutionMatrix() in favor of a static factory method getBlosum62(). The former was dangerous, since the generic type couldn't be checked. Plus, we should be explicit about what it is, since it only applies to amino acid sequences.
Merge branch 'master' of github.com:biojava/biojava
Commented a gotcha (at least, it just got me):
    SimpleGapPenalty penalty = new SimpleGapPenalty();
    penalty.setOpenPenalty((short) 10);
    penalty.getOpenPenalty(); // returns -10, not 10
Merge pull request #208 from dmyersturnbull/master

Alignment package bug fixes and improvements