maybe: implement IEnumerable<T> interface
maybe: implement IEnumerable<T> interface

This allows a potentially more natural way for accessing a value as an
alternative to Do()

For example:

    var mworld = "world".ToMaybe();
    foreach (var world in mworld) {
      Console.WriteLine($"Hello, {world}");
    }

The main motivation is in async scenarios, where dealing with nested
lambdas can be kind of awkward.

Signed-off-by: William Casarin <fe06e754383a5e4e4f742c8e12e1ab1512ad8030@jb55.com>

radiosterne/Functional.Maybe,AndreyTsvetkov/Functional.Maybe