added setup.py, improved documentation