adds setup.py and some gitignore changes to deal with the respondibilities of being a proper package