Purely Functional Data Structures Exercises in OCaml