nicer layout
add .gitignore, refactor directory structure