!bug: invalid reference skips author setting

If there is an invalid reference in ZAML file, like

  some_user:
   foo: bar
  new_user: @invalid_user
   foo: not_bar

then any setting for "new_user" will be ignored. Actually,
the reference line is skipped, so "new_user" will have not
any setting, while "some_user" (whose settings are above
the reference line) will accept non-wanted settings, so

  some_user:
    foo: bar
    foo: not_bar

and finally, the "some_user" will use "not_bar" for "foo".

In pratice, this may be considered as a "feature", because
in ZAML any invalid line is meanless and used by the last
user. However, that is very confused thing. Let see this
example: The "some_user" belongs to the group "~moderator",
and we have in ZAML

  ~moderator:
    edit_image_of: any
  new_user: @some_user

People may think this works. But it is not. This is because
the referene "@some_user" doesn't expand at the time ZAML
file is parsed (this is natural; the parser shouldn't depend
on any back-end stuff).

In this fix, we make sure that an invalid referene lince
will not skip author setting. We do not fix expansion issue.