Lessons 18-20

Code from lessons 18 through 20 have been added to the repo.