Added Either implementations (except map2) + tests