Field value coercion

Split validation and coercion so that a field accepts any value until
validation is explicitly performed. Closes issue #82.