Better parse errors

Extract #to_field / #each_record syntax and semantics checking into several methods and make the resulting error messages slightly better (by including the name of the field being parse, or the name of the last-named-field successfully parsed).