restructure project and add setup.py