Adds .gitignore and Makefile to chapter 4.
Updates exercises from chapter 4.