Added a catch method that calls Monad.fail on exceptions
Added an either moned
simplifed the io __iter__ method
simplified the catch() method's signature
Added test coverage
Merge pull request #11 from ericmoritz/feature/either-monad

Feature/either monad