completed first draft coverage of functors and monads