Extensive updates to field type validation and update handling. Fixes #26 and helps #19