Refactor existing tests and docstrings.

Use the ddt module to slim down existing tests. Rewrite some docstrings to
improve intra-documentation links.
Update module docstring