Move tests into a directory

I'm hoping to add more tests for specific features and break then into
separate files so things are a bit easier to manage.
Add Makefile for testing and publishing
Update travis configuration to use make test
Simplify MANIFEST.in
Add setup.cfg
Remove test and publish functions from setup.py
Parse version string without importing source code

It's probably better to execute as little code as possible from
setup.py, so this approach seems cleaner to me.
Use entry point for bin stub

The script in bin/ remains for running directly from the source
directory.
Cleanup setup.py
Remove accidental tabs in unit tests

Python 2 will overlook this and continue executing, but python 3 will
issue an error and exit.
Add unit test for adding a package file via CLI

Re #20
Fix typo in setup.py classifiers
Push test packages to correct server
Ignore build directory for wheels
Remove executable bit from test_basic.py
Add tox configuration file
Update gitignore to include .tox directory
Tweak makefile test runner
Remove test publish target from makefile
Remove envlist from tox.ini

I prefer executing 'tox' and having local results for my default version
of python.  Specifying a particular python version is easy with the '-e'
flag.