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