Clean up alphabet package

* Nicer definition of default alphabets.
* Improve documentation.
* More generic approach.
Don't defer if not needed
Tests for quality score conversion routines
Generated table to do conversions

Maybe change these to source tables at a later stage, though the cost is
not great and I think the transparency of including the table generation
code is beneficial.
Fix examples

Names had changed under them. Make them package level.
Add IUPAC alphabets and simplify indexing

Case insensitivity as was set up previously broke the possibility of
using bit-packed nucleic alphabets. So now when do less work to ensure
uniqueness, but document this, and retain the order specified by the
caller.
Fix apparent regression due to ac979

The regression was due to another incorrect use of phred scores and
float to int rounding. The tests in the above commit highlighted this
error, but this change was not propagated to the dependent packages.

The default Qphred threshold has been increased to 3 as this corresponds
to an E value of ~0.5 which is a pretty reasonable arbitrary place to
choose.
Don't implicitly buffer writes

Sequence writing does not buffer writes and it seems the standard
library does not do this either.
Use a more meaningful name for intermediate int

* -> _n
More idiomatic error handling
Move alignio into seqio

It doesn't deserve its own io branch.
Test that reported written bytes is correct

It wasn't for BED of non-Bed* feat.Features and GFF.
Issues identified by go vet

Mainly introduced during changes from using biogo errors to string-based
errors.
Allow test to pass with Go tip

Reflect changes in anonymous function naming.
Make setters explicit in failability

None of the built-in type do fail, but derived types may fail - for
example a type that parses description to fill fields may fail if given
a bad description.
Make use of setter errors in seq IO

This allows seq type extensions to return informative errors if using
modified SetName and SetDescription methods.
Line wrapper and output limiter

This is a helper type principlally for formatting FASTA files.
Wrapper did not correctly handle end of lines

End of slice previously always resulted in a newline.
Fix example name

Affine is not yet implemented. So don't try to use it as an example.
Split core imports from biogo imports