Parameterize splitter class

Add a registry, ``tablesplitter.splitter.registry`` to register
splitter classes and use this in the ``split_img`` command to
lookup the requested splitter.

Also allow negative indexes in the span_map to gracefully handle
the case where the last (and empty) column is cut off.
Create setup script

Create setup.py file that uses setuptools to make this a
distributable package.

Define the dependencies in setup.py and use a pattern for
requirements.txt from
https://caremad.io/blog/setup-vs-requirement/