Port GeneticCode module from pycogent

This is a direct port from the code in pycogent, the main things that changed
were:

    - attribute and method names are now underscore separated (~~stupid
      PEP8~~).
    - numpy docstrings (with examples yay!).
    - module level documentation.
    - indexing in skbio's docs.
    - change tests to use unittest methods instead of pycogent's.
    - A lot of PEP8 changes.

Fixes #110