Major refactoring
.gitignore