implement the monadic bind function, `(monad<a>, fun<a -> monad<b>>) -> monad<b>` perhaps an infix operator for it too
implement the monadic bind function,
(monad<a>, fun<a -> monad<b>>) -> monad<b>perhaps an infix operator for it too