I agree that default initialize is nice, but null is still a problem. How many % custom validator implementations need to handle the null case other than ignoring it? In my experience, 0%.