Add two ocaml implementation

One non-solution following a classic continuation-passing-style encoding.
One solution extending the previous one with some tricks.
Merge pull request #113 from def-lkb/master

Add two ocaml implementations