public bool Equals(IMayHaveSome other) => other != null && !other.HasSome;
public bool Equals(IMayHaveSome other) => other is Option <T> ?Equals((Option <T>) other) : other != null && !HasSome && !other.HasSome;