fix project structure; update .gitignore