Added setup.py and refactored directory structure.