Need to add __pk_val to data after validation failure, as things like
caneditrow need it.  Also added test in caneditrow to see if __pk_val is
empty, i.e. this is a new form, in which case can't have any opinion on
it, as it isn't a row yet.  :)  Should probably avoid canEdit checks on
new form in the first place, though.