Add .gitignore
Logical functions
Update