first try at Either.map