Validation should fail if attribute is defined without a default value and no value was set.

We might want to have a look at validations altogether (now or at some later point). I think `#call` should raise an exception if operation is not valid, but `#valid?` should not.