Monad instance for both ftl:: and std::functions.
Use of wrong either tag fixed.
Beginnings of cobbled together unit tests.
Initial lazy monad transformer.