Add version argument

This closes #52: Aside from the obvious addition of a `--version` argument, it is implemented via [python-versioneer](https://github.com/warner/python-versioneer), which _is a tool for managing a recorded version number in distutils-based python projects_:

> The goal is to remove the tedious and error-prone "update the embedded version string" step from your release process. Making a new release should be as easy as recording a new tag in your version-control system, and maybe making new tarballs.

* [Version String Management in Python: Introducing python-versioneer](https://blog.mozilla.org/warner/2012/01/31/version-string-management-in-python-introducing-python-versioneer/) provides a more detailed overview of the problem and approach

This seems to work nicely, despite issues being on file for Windows (likely those depend on the specifics of the local Git installation, they do not seem to apply to me at least) and does indeed _remove the tedious and error-prone "update the embedded version string" step from your release process_, besides nicely surfacing commit based and dirty builds; it isn't out of the question that this solution needs to be reconsidered though.