Currently Kleisli has two methods flatMapF and andThen that have duplicated type signatures and implementations.
This andThen is an overloaded version that takes a function as opposed to a Kleisli.
I propose keeping flatMapF and removing the andThen that uses Function1 to prevent confusion and avoid overloading. What do people think?