Merge the fields for multiple `fields_for` calls

If `fields_for` is called several times for the same nested model, a structure
of the following form is constructed and signed:

    {"user" => ["name", "email", {"pet_attributes" => [:name]}, {"pet_attributes" => [:species]}]}

Unfortunately, due to the way strong parameters work, only the attributes in
the last occurance of `"pet_attributes"` will be allowed.

This patch merges the hashes together to yield the following structure:

    {"user" => [:name, :email, {"pet_attributes" => [:name, :species]}]}