Respect offsets when eager graphing *_one associations

Previously these were respected by eager, but not by eager graph,
resulting in incorrect values if they were used with eager_graph.
Handle presence validations on foreign keys in associated objects when creating new associated objects in the nested_attributes plugin

If you have a presence validation on a foreign key in the associated
object, it would previously fail when using nested attributes, because
all validations are done before the parent object is saved, and the
foreign key value is not available until after the parent object is
saved (if the parent object is also a new object).

Handle this case by assigning the foreign key value for the
associated object before validation, and if the parent object doesn't
have a primary key, setting it to a dummy zero value.  If a dummy value
is used, it is removed after validation to avoid issues if the save
isn't successful.