Fixed some documentation errors.
Coverage now checks import errors as well.
Turned off coverage of cmp_to_key temp class implementation.
Fixed tuple bug with string manipulations.

The duck typing mechanism failed when calling `.lower` or `.swapcase`
on tuples because the `try: except:` block only caught `TypeError`s,
and this raises an `AttributeError`; this has been corrected.

This fixes #15.
Refactored utility functions out of natsort.py.

The utility functions and variables have been refactored out of the
natsort.py module and into the utils.py module... this has the benefit
of placing only user-facing code in natsort.py, and also making it
more obvious that most of the utility functions went into building the
_natsort_key, and were not used by the user-facing functions.

The hope is that this makes natsort more easy to maintain.
Changed import scheme from relative to absolute.
Unit tests now display lines with missing coverage.
Separated testing files.
Bumped version, updated change log.
natsort version 3.5.1 release.

  - Fixed bug that caused list/tuples to fail when using
    'ns.LOWECASEFIRST' or 'ns.IGNORECASE'.
  - Refactored modules so that only the public API was in natsort.py
    and ns_enum.py.
  - Refactored all import statements to be absolute, not relative.