SearchIO hmmer3-text: Don't overload the hit_list variable with different datatypes

No functional change, just a rename of a variable to make the code less confusing

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>
SearchIO: Add optionalcascade getter/setter to allow Hit objects without HSPs

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>
SearchIO hmmer3-text: HSP entries can be empty for valid hits

This should fix bug #3400 and still needs a test

Signed-off-by: Kai Blin <kai.blin@biotech.uni-tuebingen.de>
GenBank.Scanner: Raise ValueErrors instead of AssertionErrors when parsing fails

Other parts of the parser code all raise ValueError()s when they
encounter unexpected input, just the checks for record.id, record.name
and record.description raise AssertionErrors. Fix this and provide more
meaningful error messages.

For record.name, this code path can be triggered by a GenBank file with
the locus line of "LOCUS        \n".

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