Implement adding new attributes to resource schema fields

Adds a new "Add a new attribute to this column:" section to the resource edit
form with key and value <input>s and a (+) button. When the (+) button is
clicked, the entered key and value are added to the schema field, the page is
reloaded with the new key and value added and the "Add a new attribute"
<input>s empty again ready to add another new attribute.

If you enter text into the inputs and then click to go to another column
(without clicking the (+) button first), you can go back to the column that
you were on and find your text still entered into the inputs.

As with editing existing attributes, new attributes aren't actually saved to
the db until the Save button is clicked.

If you add a new attribute with the same key as an existing one, it simply
overwrites the existign attribute, no warning is given.

If you try to add a new attribute with an empty key, it won't be added and
the page will just reload with any text you entered into the Value <input>
still there, again there's no warning.

If you enter text into the new attribute inputs and then click Save without
clicking (+) first, the new attribute is *not* saved.

If you hit Enter in one of the inputs instead of clicking the (+) button,
it doesn't work.
Implement deleting attributes from schema fields
Show correct column names in CSV preview

Use the column names from the schema, not the ones from the CSV file.