Use semigroup in StateWithError

This is a minor annoyance.