* A bind operation (note the type):
+<pre>
let bind m f = match m with None -> None | Some n -> f n;;
val bind : 'a option -> ('a -> 'b option) -> 'b option = <fun>
+</pre>
`bind` takes two arguments (a monadic object and a function from
ordinary objects to monadic objects), and returns a monadic