Value: keep track of dirtiness.
Field: add test case for onBlur