better setup.py file and versioning