Some fixes for nested fields

while trying to manage import of nested fields ([client][ip_address]) from grok filters, I had two problems:

- eval in fieldreference crashed because field didn't exist (read before write or due to the other bug ?)
  because e["client"] = nil and next e["ip_address"] fails

- value didn't shows in output:
  because if keys exists in event.rb:150, obj est substitued with his child
  if keys does not it is created, but obj was not substitued and next operation is not done on the right obj

voila, this and jordansissel/ruby-grok#6 should make nested fields assignable directly from grok filters :)