Reorganized and cleaned up substantially. Added setup.py