Added exercise 2.12-2.16 and refactored 2.1_exercises.clj.