Added setup.py and more documentation