Chapter 6/7 implementation
Added the .gitignore