Completed exercises 20-32. Learned a bunch!