Adding code from lab 11

- folds
- higher order functions implemented via fold
- infinite lists