Exercises 2.17 through 2.41

2.42 incomplete.