Assume stranded features for bad LOCUS link GenBank files.

i.e. Default to assuming nucleotides (and so stranded features)
rather then amino acids (where the protein features have no strand)

Based on an issue reported by Kai Blin.

Unit test to follow...
Adding test case from Kai Blin; Fixed some warnings.

This test GenBank file with an invalid LOCUS line lets
us test the strand behaviour fixed in the previous
commit.

Some generic warnings from the GenBank parser should
have been BiopythonParserWarning - and thus silenced
in the unit tests.

Also fixed line lengths for some other GenBank warnings.
Phylo.draw_ascii: use floor division (Py3 compatibility)

See Bug #3435
Using // for explicit integer division, don't need import
SeqIO: Better cope with wrong LOCUS line spacing in GenBank

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>
Fix minor typo in exception
Thank Kai for GenBank parsing work
For Python 3, recommend Python 3.3.2 or later
Run part of test_Phylo_depend.py if NetworkX missing
avoid NaNs in the calculation of the mean score (David Arenillas, University of British Columbia)
SeqIO.GenBank: survive empty feature qualifiers

When a GenBank file contains an empty qualifier for a key that already
contained a qualifier, the `feature_qualifier()` function fails with

AttributeError: 'NoneType' object has no attribute 'replace'

because the code doesn't return from the if value is None check designed
to catch this case.
This patch fixes the AttributeError by just returning.

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>
GenBank: Don't die parsing files with too short feature qualifiers

I just stumbled over an input file that didn't specify a locus for some
misc_feature in production. This caused the GenBank parser to die with
an IndexError. As that's not the greatest error message to return to
library users, just handle and ignore invalid feature qualifiers.

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>

Conflicts:

	Tests/output/test_GenBank
	Tests/test_GenBank.py
Adding copyright statement
Replacing the call to ic(), which has been removed, by a call to pssm.mean()
_recover_alignments does not use penalize_end_gaps
In pairwise2, allow penalize_end_gaps to be different for the two sequences
adding some description for penalize_end_gaps
Replacing tabs with spaces in C-code
Dont cast NULL pointers
Fix for Bug 3439. DR lines in SwissProt records don't have comments, so delete the code for splicing out comments from DR lines