`val map : f:('a -> 'b) -> 'a option -> 'b option`
`val to_list : 'a option -> 'a list`
`val bind : f:('a -> 'b option) -> 'a option -> 'b option`
`val iter : f:('a -> unit) -> 'a option -> unit`
`val filter : f:('a -> bool) -> 'a option -> 'a option`
`val compare : ('a -> 'b -> int) -> 'a option -> 'b option -> int`
`val equal : ('a -> 'b -> bool) -> 'a option -> 'b option -> bool`
`val is_none : 'a option -> bool`
`val is_some : 'a option -> bool`
`val value : default:'a -> 'a option -> 'a`