Added the `Result[E, T]` data type

Should there be a functor as well?