Improve setup.py

Packaging, dependencies, and meta specifications.