mod .gitignore
refactoring some classes