Split up extra requirements away from the rest of the project.
Add setup.py for PyPI distribution.
Enhance Invoke tasks.