updated to do, did a little bit of refactoring, and adding gitignore