update changelog
improve setup.py