Made a number of changes.
Switched from `distutils` to `setuptools`.
Added `__all__` to all appropriate modules.
Modified `setup.py` to install scripts onto `$PATH`.
Fixed local imports to use `.` prefix, which is necessary when a
package is installed. Before we omitted the `.` prefix, which meant it
was looking on the global path for the packages, not the local path.