A protocol based monads library for Clojure